vue-cli请求非跨域地址的数据

在使用vue-cli时 我使用了跨域

vue.config.vue
module.exports = {
    lintOnSave: false,
    devServer: {
        proxy: {
            '/api': {
                target: 'http://localhost:3000',  // target host
                ws: true,  // proxy websockets
                changeOrigin: true,  // needed for virtual hosted sites
                pathRewrite: {
                    '^/api': ''  // rewrite path
                }
            },
        },
    },
};
但是我现在想请求其他网址的数据,但是他报错了

image.png

有没有哪位大神知道应该使用什么方法吗?

阅读 2.6k
3 个回答

你应该是请求的远程地址吧,然后没走代理,但是你本地localhost请求它仍然是跨域的。所以,要不你就改 target 的主机地址,请求的时候走 /api 命中代理的逻辑。要不就 CORS 配置一下,直接用 XMLHTTPRequest 请求。

这个请求的这个地址不对。需要打到localhost:8081/api下面

  1. 你的配置不叫跨域,这个叫代理。即你访问 (localhost:8081)/api = localhost:3000/api,其它照常。
  2. 访问其它网站,没有代理,走跨域策略,没有开放给你,就报错了。
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题