我试图在按钮点击时调用post api但是我显示了这个错误:
提供的参数与呼叫目标的任何签名
都不匹配
代码:
changeStatus(id) {
this.http.post('https://localhost:44300/api/apis/ChangeStatus/' + id)
.subscribe(
data => this._data = data.json(),
err => this.logError(err)
);
}
答案 0 :(得分:23)
http.post
期望将正文发送到目标主机。
http.post(url, body, requestOptions)
因此,如果您只想要一个空体,因为您没有其他数据要发送,您可以这样做:
changeStatus(id) {
// mind the empty string here as a second parameter
this.http.post('https://localhost:44300/api/apis/ChangeStatus/' + id, "")
.subscribe(
data => this._data = data.json(),
err => this.logError(err)
);
}
答案 1 :(得分:1)
post
方法至少需要两个参数,第一个是' URL'以及第二个' Body'在你的代码中,你只是传递URL而不是正文。