我尝试向API发出POST请求,但我收到此错误:
XMLHttpRequest无法加载http:// *。预检的响应具有无效的HTTP状态代码400 但是,当我尝试发出GET请求时,它会起作用。
我的获取方法:
getMethod() {
return this.http.get<PerfilModel[]>(globals.BASE_URL + 'perfis');
}
我的帖子方法:
updateMethod(changePass: ChangePassModel) {
let h = new Headers();
h.append('Content-Type', 'application/json');
return this.http2.post(globals.BASE_URL +
'users/passwords/redefinitions/' +
changePass.key, JSON.stringify(changePass),
{ headers: h }
).map(res => res.json);
}
观察:cors toggle插件已激活。
答案 0 :(得分:1)
HTTP 400错误请求响应状态代码表示由于语法无效,服务器无法理解请求。客户不应在未经修改的情况下重复此请求。
可能是服务器端他们允许post方法。
答案 1 :(得分:1)
globals.BASE_URL + 'users/passwords/redefinitions/' + changePass.key + '/'
如果你的后端激活了cors toggle插件,你的网址最后缺少&#34; /&#34; ,你可以查看
答案 2 :(得分:0)
问题在于浏览器的原始策略,因此我使用以下标志禁用了安全性: - args --disable-web-security --user-data-dir =&#34;&#34;它起作用了。