axios post跨域请求报405,get正常

首先 跨域配置如下:

找到index.js中的dev属性。添加如下代码:

proxyTable: {
      '/api': {
        target: 'http://localhost:8083',//设置你调用的接口域名和端口号 别忘了加http
        changeOrigin: true,
        pathRewrite: {
          '^/api': '/'//这里理解成用‘/api’代替target里面的地址,后面组件中我们掉接口时直接用api代替 比如我要调用'http://40.00.100.100:3002/user/add',直接写‘/api/user/add’即可
        }
      }
    }     

axios post 请求:

import axios from 'axios';

export const getListPage = params => { 
     return axios.post(`/api/picc/local/paudit/query/projectapquery`, 
		params).then(res => res.data); };

其中,默认Content-Type为application/json;charset=UTF-8

之后请求,发现post请求报405错误,get请求正常,原因:

笔者项目web.xml中配置拦截器对默认是否允许跨域请求属性为:true

即:web.xml中配置与前端页面重复而导致了某种冲突。

解决:

注释掉  changeOrigin: true 属性,即:

//changeOrigin: true

最后,附上vue+element后台管理系统示例网址:

https://www.cnblogs.com/taylorchen/p/6083099.html

原文地址:https://www.cnblogs.com/5588kjx/p/10384358.html