概括 :
想要使用JSONP的POST方法将数据发送到另一个域。
代码 :
$http.jsonp($scope.baseApiUrl+'QueryBuilder/getData?callback=JSON_CALLBACK')
.success(function(data, status, headers, config) {
$scope.success = true;
console.log(data);
}).error(function (data, status, headers, config) {
$scope.error = true;
});
它的工作正常。但是我有很多数据需要跨域发送到服务,并且太大了,无法通过查询字符串发送。所以我想将其作为JSON发送。
data: {
"dbName":"test",
"tables":["city","persons"],
"filters":["city_id='Hyd'"]
}
发现 :
如何通过jQuery发出指定contentType的jsonp POST请求?
无法在跨域上使用JSONP发布数据
如何使用JSONP将数据从本地主机发送到domain.com
通过JSONP和jQuery使用PUT / POST / DELETE
每个帖子都表明这是不可能的,那么还有其他替代方法吗?
问题 :
是否可以将数据发布到JSONP?还是所有数据都必须作为GET请求传递到查询字符串中?
任何立即的帮助将非常可贵。谢谢。
是否可以将数据发布到JSONP?
不,不是。
JSONP的工作原理是添加一个从其获取数据的<script>
元素(数据嵌入在JavaScript程序中)。您无法发出POST请求来加载JavaScript程序。src
还是所有数据都必须作为GET请求传递到查询字符串中?
是的
JSONP是绕过Same Origin Policy的肮脏黑客。
引入CORS是解决“同源起源”策略的标准方法,该方法要灵活得多。如果获得CORS的授权,则可以使用XMLHttpRequest发出POST请求。请改用CORS。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句