【发布时间】:2016-07-03 22:40:36
【问题描述】:
我正在尝试 whatwg-fetch(Fetch API 的 polyfill),在进行 POST 时,会执行预检。但由于在将 OPTIONS 发送到 REST 服务时未发送凭据,因此我收到“未经授权”的响应。
return fetch('http://localhost:8080/activity', {
credentials: 'include',
method: 'POST',
mode: 'cors',
body: JSON.stringify(activity),
headers: new Headers({ 'Content-Type': 'application/json' })
});
【问题讨论】:
-
如果您控制服务器,则需要配置服务器,使其不需要对
OPTIONS请求进行身份验证(服务器没有理由要求对它们进行身份验证,而不是 @ 987654323@ 或POST请求)。但是如果你不控制服务器,浏览器就无法正确地向它发出任何需要 CORS 预检的跨域请求。 -
对不起,为什么 fetch api 会发送一个 OPTIONS 请求?
标签: javascript rest cors fetch-api