【发布时间】:2017-10-30 13:17:42
【问题描述】:
我正在使用带有代理的 angular-cli 将我的请求发送到后端。我的后端在本地端口 5000 上运行,角度应用程序在默认端口 4200 上运行。GET 请求一切正常,但是我使用 HttpClient 发出的所有 POST 请求都作为 GET 请求发送。
其他方法,如 PUT、PATCH 等按预期工作。
我的代理配置:
{
"/api/*": {
"target": "http://localhost:5000",
"secure": false
}
}
如果有人能解释为什么会发生这种情况并且如果我正确使用代理,我将不胜感激。
编辑:
正在使用服务方法发出请求:
logout(): Observable<any> {
return this.http.post('api/v1/user/logout', {});
}
【问题讨论】:
-
这里没有足够的信息让我们帮助您。请包含您用于运行后期操作的代码。
-
抱歉,用请求代码更新了我的问题。请求真的很基础,因为我想用它实现的只是发送一个正确的方法。到目前为止还没有发生。
-
对于所有发布请求,我们也必须发送正文。在这里,您没有添加任何正文。可能是它的创建问题。只需创建一个变量 let body = {};并将其作为 return this.http.post('api/v1/user/logout', body);试试这个@jakub
-
感谢您的建议。不幸的是,添加 body 并没有改变任何东西。有效载荷被丢弃并发送 GET 请求。
-
我不认为发布数据是其中的任何因素。空帖子请求实际上很常见。问题在于,当使用 angular-cli 代理时,我发送 GET 而不是 POST,无论它们是否携带数据。
标签: angular proxy angular-cli