Vue移动端框架Mint UI教程-接口跨域问题(七)

自己写了一个json数据,放在服务器上,现在要通过vue项目调用数据

http://www.intmote.com/test.json

我现在要调用

在调用接口数据的时候的时候 会出现这样的报错

Access to XMLHttpRequest at 'http://www.intmote.com/test.json' from origin
'http://localhost:8080' has been blocked by CORS policy: 
No 'Access-Control-Allow-Origin' header is present on the requested resource.

这个时候,是遇到了跨域的问题; 由于接口跨域问题,因此不能直接通过ajax请求访问

查看自己的代码,直接把json接口写在请求里

图片.png

解决办法:设置代理,利用proxyTable属性实现跨域请求

1:打开build/webpack.dev.conf.js,配置代理proxyTable属性如下:通过vue-cli提供给的代理(proxy)进行配置即可,

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

图片.png

2:回到当前页面,我的页面是my.vue,修改请求路径

created() {
            this.$http.get('/api/test.json').then((response) => {

                console.log(response.data)
                //响应正确回调
                this.nameList = response.body; //把数据存放到data中
            })
        },

3:重新启动项目

4:这个时候可以看到,跨域问题解决 json里面的数据也显示在了页面里面

github访问链接:https://github.com/wangxiaoting666/mint-demo


原文作者:祈澈姑娘 技术博客:https://www.jianshu.com/u/05f416aefbe1 90后前端妹子,爱编程,爱运营,文艺与代码齐飞,魅力与智慧共存的程序媛一枚。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

扫码关注云+社区

领取腾讯云代金券