我使用了 Angular 2 Release 并使用了 @angular/http 中的 Http 和 headers。
我尝试使用 header 调用动词删除,以及其他动词 POST、GET 和 PUT,好吧。但是用“DELETE”就不行了。
我的代码:
remove(url:string, id:any) {
let headers = new Headers();
headers.append('Authorization': 'Bearer ' + this.token);
return this.http.delete(url, {
headers: headers;
body: { id: id }
}).map(response => response.json());
}
收到的响应是:请求的资源不支持http方法“删除”。
在我的 Controller 中,我有这样的一些:
[HttpDelete]
public Task<HttpResponseMessage> Delete(int id)
{
//..
}
感谢您的帮助,问候!!
最佳答案
对我有用的解决方案是使用查询字符串,这样:
remove(urlController:string, id:any){
let headers = new Headers();
headers.append('Authorization': 'Bearer ' + this.token);
return this.http.delete(urlController + '/?id=' + id, {
headers: headers;
}).map(response => response.json());
}
示例:
remove(urlController:string, id:any){
let headers = new Headers();
headers.append('Authorization': 'Bearer ' + this.token);
return this.http.delete('users'+ '/?id=' + '2', {
headers: headers;
}).map(response => response.json());
}
关于c# - Angular 2 Http 删除 header 以便与 Web API REST 一起使用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40793224/