webApi正在使用标题请求,如何获得响应
问题描述:
url是'http:// 。。*/API/V2/****** /幻灯片广告?角色= C & showType =应用&类型=活动”webApi正在使用标题请求,如何获得响应
方法是 '得到'
页眉设置
key 'appVer'
value '4.0.0'
,如果我用邮差
你可以得到的JSON对象,
但使用提取或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))
答
服务器返回的响应是一个错误消息:
$ 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有更多细节。
打开此Web API测试[链接](http://getman.cn/)请求 - >标头 - >插入appVer:4.0.0然后您可以看到响应 – SimonSun
*请求 - >标头 - >插入appVer: 4.0.0 *?所以这是显示*请求*标题,对不对?它没有显示回应,对吧? – sideshowbarker
打开www.getman.cn然后选择Header,然后将文本appVer:4.0.0添加到textarea中,点击蓝色按钮,然后可以看到响应! – SimonSun