怎么样通过Angular使用$http.jsonp发送跨站请求?

怎么样通过Angular使用$http.jsonp发送跨站请求?

本文实例讲述了Angular使用$http.jsonp发送跨站请求的方法。分享给大家供大家参考,具体如下:

Angular中使用$http.jsonp发送跨站请求的实践中,遇到了下面的一些问题:

1. 不是所有返回json格式的url都支持jsonp,服务器端需要支持从url中读取返回函数并用它封装json数据。

2. AngularJS v1.6.1中,url中不能包含callback这个参数,而是用jsonpCallbackParam来指定


复制代码 代码如下:
$http.jsonp('some/trusted/url', {jsonpCallbackParam: 'callback'})

3. 把url加入白名单,否则会遇到浏览器同源策略限制的错误。

 

angular.module('mthtran')
.config(function($sceDelegateProvider) {
 $sceDelegateProvider.resourceUrlWhitelist([
 // Allow same origin resource loads.
 'self',
 // Allow loading from our assets domain.
 'http://query.yahooapis.com/v1/public/**'
 ]);
})

希望本文所述对大家AngularJS程序设计有所帮助。