axios如何进行跨域以及对返回格式为回调函数字符串的处理

自从vue2.0开始不对vue-resouce进行维护了,转而用axios进行代替,axios的官方文档写的很详细,附上连接一枚:http://www.jianshu.com/p/df464b26ae58html

可是,我看完之后有一个疑问,跨域请求呢?where(黑人问号脸),在vue-resouce里面还有http.jsonp进行jsonp的跨域,可是axios,通过询问,是须要开代理才能够。vue

首先,咱们须要在webpack的config的index里面进行代理设置:webpack

添加以下代码:ios

‘/api’指代的是,若是咱们想要跨域,可使用/api来代替'http://r.pengyou.com/fcg-bin/cgi_get_portrait.fcg'这个接口,剩下的选项什么意思看注释web

 

那么,咱们怎么来使用呢,看图:json

此时咱们已经能够进行跨域请求了,若是仍是没法进行跨域,那就须要后台小哥哥的配合了,让他在后台中开启跨域,我以前博客里面写事后台跨域的方法:http://www.cnblogs.com/mmykdbc/p/8024105.htmlaxios

好,看一下效果:api

是一个字符串,那么咱们用日常的JSON.parse来转换是行不通的,由于这是一个回调函数,那么咱们如何进行转换呢,网上查了许多方法,原生js或者jq都没有对回调函数作处理,因此我只能在str方面下手,我能够截取{}里面的内容啊,那样在进行转换就能够了,说半就办,代码以下:跨域

完美获得数据:函数

 

 

记得,配置完成以后必定要进行重启项目,配置完成以后必定要进行重启项目,配置完成以后必定要进行重启项目;重要的事情说三遍!!!!

相关文章
相关标签/搜索