发布于 5年前

vue proxyTable解决跨域,但POST请求不能添加参数

问题描述

vue proxyTable解决跨域但不能添加参数,不添加参数可以代理成功,添加了参数便会失败.

代码如下:

//config文件中的index.js 配置
module.exports = {
  dev: {

    // Paths
    assetsSubDirectory: 'static',
    assetsPublicPath: '/',
    proxyTable: {
      '/RegionOcrWeb':{
        target:'http://10.1.4.159:9158',
        changeOrigin:true,
        pathRewrite:{
          '^/RegionOcrWeb':'/RegionOcrWeb'
        }
      }
    },
    ....

调用成功的代码如下:

axios.post("/RegionOcrWeb/request")
    .then(function (data) {
      console.log(data)
    }, function (err) {
      console.log("111")
    })*/

调用失败的代码如下(加了入参):

axios.post("/RegionOcrWeb/request",{
    "filedata":filedata,
    "pid":pid
  })
    .then(function (data) {
      console.log(data)
    }, function (err) {
      console.log("111")
    })

报错信息如下:

net::ERR_CONNECTION_ABORTED

谷歌了很久...依旧没有解决,希望有过来人帮忙一下 谢谢~

解决方案

这个是因为上传的数据大小超过了服务器tomcat设置上传文件大小

只需要将服务器上传大小修改大一些就行了

找到server.xml文件 修改maxPostSize这个参数

maxPostSize=”0” 没有大小限制

maxPostSize=”20971520” 20M

<Connector port="8080" protocol="HTTP/1.1"  
                maxHttpHeaderSize="8192"   
                useBodyEncodingForURI="true"  
                maxPostSize="20971520"  
                maxThreads="2048"  
                redirectPort="8443"  
                enableLookups="false"  
                compression="on"  
                compressionMinSize="2048"  
                compressableMimeType="text/html,text/xml,text/javascript,text/css,text/plain"  
                connectionTimeout="20000"  
                disableUploadTimeout="true"  
                URIEncoding="UTF-8"/>  
©2020 edoou.com   京ICP备16001874号-3