我有一段可以很好地跨源工作的jQuery代码:
jQuery.ajax({
url: "http://example.appspot.com/rest/app",
type: "POST",
data: JSON.stringify({"foo":"bar"}),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function (response) {
console.log("success");
},
error: function (response) {
console.log("failed");
}
});
现在,我试图将其转换为Angular.js代码,但没有成功:
$http({
url: "http://example.appspot.com/rest/app",
dataType: "json",
method: "POST",
data: JSON.stringify({"foo":"bar"}),
headers: {
"Content-Type": "application/json; charset=utf-8"
}
}).success(function(response){
$scope.response = response;
}).error(function(error){
$scope.error = error;
});
任何帮助表示赞赏。
3
不知道angular.js,但也许faile()是函数的错误名称?
—
Bogdan Rybak 2012年
发现了另一个问题simular stackoverflow.com/questions/11786562/...
—
无尽的
可能已经找到了解决方案stackoverflow.com/questions/12111936/…需要深入研究...
—
2012年
OPTIONS请求将由浏览器发出,对AngularJS /您的应用程序是透明的。如果OPTION成功,则原始请求(POST / GET /无论如何)将紧随其后,并且将针对主要请求而不是OPTION调用您的代码。
—
pkozlowski.opensource
将请求方法更改为OPTIONS可能不是Angular。您的浏览器可能正在检查是否可以执行CORS请求。如果您尝试调用一个单独的域,则浏览器将首先发出一个OPTIONS请求,以查看是否允许该请求。
—
2013年