获取请求不工作
问题描述:
我尝试添加自定义标题,X-Query-Key
,对HTTP请求使用Fetch API或request但是当我加入这个请求的头出现在设置页眉失败和Request Method
设置由于某种原因到OPTIONS
。获取请求不工作
当我删除标题时,它会回到GET
,因为它应该这样做。
样品代码看起来象下面这样:
const options = {
url: url,
headers: {
'Accept': 'application/json',
'X-Query-Key': '123456' //Adding this breaks the request
}
};
return request(options, (err, res, body) => {
console.log(body);
});
答
试试这个:
const headers = new Headers({
"Accept": "application/json",
"X-Query-Key": "123456",
});
const options = {
url: url,
headers: headers
};
return request(options, (err, res, body) => {
console.log(body);
});
如果不解决这个问题,它可能与CORS。
答
请求资源的 服务器必须支持跨源请求上的自定义标头。此 示例中的服务器需要配置为接受X-Custom-Header 标头才能使提取成功。当设置自定义标题时,浏览器执行预检检查。这意味着浏览器 首先向服务器发送OPTIONS请求,以确定服务器允许使用什么HTTP 方法和标头。如果服务器配置为 接受原始请求的方法和标头,则发送 。否则,会引发错误。
所以,你将有2个要求,如果使用自定义标题,第一个与方法选项来检查服务器允许自定义页眉和之后,如果服务器响应是200 OK,并允许你原初的请求,第二个将被发送
听起来像CORS。 – Bergi