我必须在我的 Angular5 应用程序中通过 CORS 使用 API,但是这个特定的 api 不允许在 CORS 配置中使用 Content-Type header 。我的 Angular 应用程序当前正在发送此 header ,并且预检检查失败,因为我正在发送 API 的 CORS 配置未明确允许的 header 。有没有办法删除此特定请求的此 header ?
我正在考虑创建一个拦截器,但是这是删除此 header 的最合适的位置吗?
最佳答案
这里的解决方案是不使用 Angular 的 HttpClient,而是使用 fetch api。我无法找到使用 HttpClient 并删除“Content-Type” header 的方法,即使我编写了一个拦截器并显式删除了该 header ,它又被添加回某处。
这是我最终所做的:
return fetch( environment.splunk_config.url, {
body: JSON.stringify(_message),
method: 'POST',
mode: 'cors',
headers: { 'Authorization': auth }
}
)
.then(response => response.json());
}
关于Angular 不发送内容类型请求 header ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50594372/