我在处理带有授权的CORS fetch时遇到了困难:
const token = 'this.is.secret!';
fetch('http://corsserver/api/hello', {
method: 'get',
credentials: 'include',
mode: 'cors',
headers: {
'Authorization': `Bearer ${token}`,
'Content-Type': 'application/x-www-form-urlencoded'
}
}).then(response => {
console.log(response);
}).catch(error => {
console.log(error);
});
当我运行此请求时,Chrome 将标头设置为:
请求方法:OPTIONS
我查了一下,这是一个预检请求。
我的意思是,这真的很酷。但是,在预检请求返回 OK 后,我不知道如何发送实际请求!接下来该怎么办?如何发送 GET 请求?
我错过了非常基本的东西。
GET
请求时,不需要发送Content-Type
请求头...因为在GET
中没有内容体可提供内容类型。 - sideshowbarker