【发布时间】:2019-01-25 15:51:55
【问题描述】:
我正在尝试使用后端团队给我的 curl 使用 jQuery AJAX 进行 API 调用。
curl -X POST \
https://example1.com/api/sms \
-H 'Accept: application/json' \
-H 'Cache-Control: no-cache' \
-H 'Content-Type: application/json' \
-H 's: APP' \
-d '{
"mobile": "1110002222"
}'
但它抛出了 403 禁止错误:
Invalid CORS request
这是托管在另一个域名(example2.com)上的代码:
data = {mobile: '0001112222' };
success = function(data) { console.log(data); };
headers = {s: 'APP'};
$.ajax({
type: 'POST',
url: 'https://example1.com/api/sms',
data: data,
success: success,
dataType: 'json',
headers: headers
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
我做错了什么或错过了什么?
【问题讨论】:
-
Invalid CORS request- 这就是你需要研究的东西...... CORS......仅仅因为curl可以做某事,并不意味着浏览器可以......浏览器只能做交叉对允许跨源请求的服务器的源请求 -
您是否尝试过使用 headers ={ 'Accept': 'application/json', 'Cache-Control': 'no-cache', 'Content-Type': 'application/ json', 's': 'APP'} ?
-
@Jean-ClaudeColette 同样的错误,但谢谢。
标签: javascript jquery ajax