我使用angular 4的默认Http
模块发送http请求,没有任何问题。但是,我最近用angular2-jwt
包中的AuthHttp
替换了Http
模块。现在有了AuthHttp
,它停止在post请求中将body作为有效负载发送到服务器。代码如下:
return this.authHttp.post(url, JSON.stringify(body)).map((res: Response) => {
// ...
});
上面的代码不会将正文作为有效负载发送到服务器。当authHttp被替换为http时,它会按预期发送有效负载。
我不确定我是否做错了什么,因为关于这个问题的谷歌搜索结果似乎很少。
更新:
对于AuthHttp
,Chrome Dev Tools显示只发送了一个OPTIONS
请求。这真的很奇怪。
看起来AuthHttp正在向服务器发送一些奇怪的OPTIONS请求。Chrome显示以下错误:
Response for preflight has invalid HTTP status code 400
发布于 2017-10-07 15:30:42
通过在服务器上添加以下代码解决了这个问题:
if r.Method == "OPTIONS" {
return
}
https://stackoverflow.com/questions/46617538
复制相似问题