vue.js-使用proxyTable转发请求访问豆瓣API,504错误

发布于 2022-09-06 22:02:47 字数 1034 浏览 9 评论 0

vue项目,使用axios访问豆瓣的API,出现跨域问题。参考了网上的方法,config/index.js的dev中增加如下配置

proxyTable: {
      '/api': {
        target: 'http://api.douban.com/v2',
        changeOrigin: true,
        pathRewrite: {
          '^/api': ''
        }
      }

    }

发送请求的代码如下

export default {
  name:"Douban",
  created:function(){
      this.$axios.get('/api/movie/in_theaters')
        .then(function (response) {
            console.log(response);
        })
        .catch(function (error) {
            console.log(error);
        });
  }
}

npm run dev启动项目后,无法获取数据。浏览器请求504错误,
图片描述
终端信息如下

I  Your application is running here: http://localhost:8080
[HPM] Error occurred while trying to proxy request /movie/in_theaters from localhost:8080 to http://api.douban.com/v2 (ENOTFOUND) (https://nodejs.org/api/errors.html#errors_common_system_errors)

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

ら栖息 2022-09-13 22:02:47

代理配置完成之后 把启动本地服务的locahost 换为本地的ip启动服务,这是服务端那边做的某些限制

步骤详细如下:

第一步 访问项目的locahost 变成你本地的ip
clipboard.png

第二步 配置代理

 proxyTable: {
  '/v2': {
    target: 'http://api.douban.com',
    changeOrigin: true,
   }

}

this.$axios.get('/v2/movie/in_theaters')
    .then(function (response) {
        console.log(response);
    })
    .catch(function (error) {
        console.log(error);
    });   // 就按我写的配不需要更改
    

clipboard.png

clipboard.png

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文