vue 使用axios 跨域请求数据的问题

axios默认是没有jsonp 跨域请求的方法的。一般来说流行的做法是将跨域放在后台来解决,也就是后台开发人员添加跨域头信息。

例如java中的

header,response.setHeader("Access-Control-Allow-Origin", "www.allow-domain.com")

但是很多时候,后台出于一些原因不想修改或者已经写好jsonp的接口需要适应不同平台,此时,前端就可以单独引入依赖解决该问题了。

引入依赖

cnpm install jsonp

 

导入到vue文件

import jsonp from 'jsonp'

 

使用方法(可以参考npm上 jsonp的文档说明)

jsonp("http://cross-domain.com",//替换网址
    {
        //jsonp的回调函数名
        name: 'success_jsonpCallback'
    },

    //注意第一个参数是 err,第二个参数是 data
    function (err, data) { 
        console.log(data);
    });

 

posted @ 2017-10-18 16:55  前端小小菜  阅读(579)  评论(0编辑  收藏  举报