开发者社区> 问答> 正文

vue项目使用 axios请求接口,后台设置了跨域 也没用? 400 报错

vue项目使用 axios请求接口,后台设置了跨域 也没用? 400 报错

展开
收起
爱吃鱼的程序员 2020-06-01 10:17:42 1964 0
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    后台问题,没设置上头######我设置了的,我在html5上用ajax请求 都行。唯独在vue里面用axios出错。######

    引用来自“OSC_eZazfh”的评论

    后台问题,没设置上头

    我设置了的,我在html5上用ajax请求 都行。唯独在vue里面用axios出错。

    ######

    1 设置跨域

    2 linux服务器设置跨域和spring同时设置跨域会冲突 导致失效

    ######我只在spring里面设置了跨域。并且我用 ajax在html上测试 ,跨域是能用的。######

    如果是用的vue-cli创建的项目,可以在webpack.config.js的devServer中加入代理来实现:

    devServer: {
        historyApiFallback: true,
        noInfo: true,
        overlay: true,
        proxy: {
          '/api': {
            target: 'http://www.xxx.me',
            changeOrigin: true,
          }
        }
      }

     

    ######谢谢,已经好了。######

    开发的时候,如果用了webpack devServer,记得在webpack里面配置上反向代理。部署的时候,如果是放到和后台代码分开部署,记得在对应的web容器(如nginx)配置反向代理。

    ######谢谢,已经好了。!######

    这都到不了后台就跨域错误了,先用nginx做个代理把

    ######谢谢,已经好了.######
      dev: {
        env: require('./dev.env'),
        port: process.env.PORT || 8080,
        autoOpenBrowser: true,
        assetsSubDirectory: 'static',
        assetsPublicPath: '/',
        proxyTable: {
          '/api': {
            target: 'http://127.0.0.1',
            changeOrigin: true,
            pathRewrite: {
              '^/api': '/api'
            }
          }
        },

    全文搜索一下关键字   把配置文件中的 changeOrigin设置为true 

    ######谢谢,已经好了######

    麻烦问一下楼主是怎么解决的?我也遇到这样的问题了。。

    ######解决了,反向代理配置错了######

    我也遇到同样的问题,请问楼主反向代理是怎么配置的,这个是我按网上说的配置的还是没有用,

    下面是请求数据函数

    ######这个问题是请求接口和proxyTable中配置的不匹配导致的:grin:######

    谁那里有Nginx配置,vue proxy

    2020-06-01 10:17:43
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Vue.js 在前端服务化上的探索与实践 立即下载
利用编译将 Vue 组件转成 React 组件 立即下载
Vue.js在前端服务化上的实践与探索 立即下载