关于新浪微博API的ajax跨域问题
最近工作有个微博营销的需求需调用新浪微博API接口,碰到了不少问题,一一总结
1.利用ajax调用新浪微博API接口牵扯到ajax跨域的问题,而ajax跨域的问题有几种解决方案,如jsonp、动态script标签、iframe,各种方案的要求与适应场景各不相同,网上一搜一大把。在新浪微博的API说明中,只说明了返回的数据类型,未说明是否支持jsonp方法回写,其实新浪微博API是支持jsonp回写的,如用jquery发ajax请求
?
?
$.ajax({ // Weibo API. url: "https://api.weibo.com/2/users/show.json", type: "GET", dataType: "jsonp", data: { source: "XXX", uid: "XXX" }, success: function(data, textStatus, xhr){ alert(data.data.screen_name) }})?通过抓包工作可以抓到发出的请求为
?
?
https://api.weibo.com/2/users/show.json?callback=jsonp1337331494998&source=XXX&uid=XXX?try{jsonp1337331494998({"code":1,"data":{"id":XXX,"idstr":"XXX","screen_name":"XXX","name":"XXX","province":"44","city":"3","lo...