我正在尝试使用Restangular以下列方式发出CORS POST请求:
//data is a json object
var urlToPost = '/api/deal/update/'+dealId;
return Restangular.all(urlToPost).customPOST(data, '', {}, {
"Content-Type": "application/json",
"Access-Control-Allow-Origin": "*",
"Access-Control-Allow-Methods": "POST, GET, PUT, DELETE, OPTIONS"
});
当我点击通话时,控制台上会出现以下错误:
XMLHttpRequest cannot load http://55.76.122.145:8080/hulk/api/deal/update/55cd93bd20ce9744aeebff3a. No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://localhost:9001' is therefore not allowed access.
在“广告联盟”标签中,我可以看到successful
来电status 200
,并OPTION
方法触发了{{1}}。
如何去做?我做错了什么?
答案 0 :(得分:2)
错误消息为您解释:
否'访问控制 - 允许 - 来源'标头出现在请求的资源上。起源' http://localhost:9001'因此不允许访问。
服务器必须回复,并使用响应包含Access-Control-Allow-Origin
标题,告知浏览器该网站的响应允许访问JavaScript。
Access-Control-Allow-Origin
和Access-Control-Allow-Methods
不是请求标头。您无法编写允许自己从其他人的网站读取数据的JavaScript。那太傻了。