网址是'http:// 。。* / api / v2 / ****** / slide-ads?role = C& showType = app& type = activity'
方法是'get'
标头设置
key 'appVer'
value '4.0.0'
如果我使用邮递员
您可以获取JSON对象
但是使用fetch或jquery,我无法得到响应!
var vheaders = {
"appVer": "4.0.0"
};
fetch(URL, {
method: "GET",
headers: vheaders
})
.then(res => res.json())
.then(data => console.log(data))
.catch(e => console.log("Oops, error", e))
答案 0 :(得分:0)
服务器返回的响应是错误消息:
$ curl -i -H "Origin: http://example.com" \
'http://123.56.230.49/api/v2/freekeers/slide-ads?role=C&showType=app&type=activity'
HTTP/1.1 422 Unprocessable Entity
Server: nginx/1.8.0
Date: Mon, 31 Jul 2017 20:30:23 GMT
Content-Type: application/json;charset=utf-8
Transfer-Encoding: chunked
Connection: keep-alive
{"code":"0000","message":"请求无法获取当前版本号"}
注意HTTP/1.1 422 Unprocessable Entity
。
中文文本转换为“无法获取当前版本号。”
该错误响应也不包含Access-Control-Allow-Origin
响应标头,因此您的浏览器不允许您的前端JavaScript代码访问响应正文。
对于跨源请求,CORS协议要求浏览器禁止从前端代码访问响应主体,除非响应中包含Access-Control-Allow-Origin
。
https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS有更多详情。