2016-09-21 18 views
2

Angular2はhttpメソッドの削除によってjsonボディを送信できますか?角2 Http deleteボディにjsonを送信

私はそれを試してみて、それがRequestOptionsArgs interfaceあたりとHttp delete関数の引数としてエラー

ORIGINAL EXCEPTION: options.search.clone is not a function 

service.ts

deletetag(tagid: number): Observable<any> { 

    let body = JSON.stringify(
     { 
      "token": "test", 
      "content": { 
       "tagId": tagid 
      } 
     } 
    ); 

    let headers = new Headers({ 'Content-Type': 'application/json' }); 
    let options = new RequestOptions({ headers: headers }); 

    return this.http.delete("http://localhost:8080/backend/tag", body, options) 
     .map(res => this.extractData(res)) 
     .catch(this.handleError); 
} 

component.ts

this.tagService.deletetag(1) 
    .subscribe(
     data => { }, 
     error => { }, 
    () => { } 
    ); 

答えて

9

言った、私はあなたが必要だと思います以下のように削除要求を送信する:

deletetag(tagid: number): Observable<any> { 

    let body = JSON.stringify(
     { 
     "token": "test", 
     "content": { 
     "tagId": tagid 
     } 
    } 
); 
    let headers = new Headers({ 'Content-Type': 'application/json' }); 
    let options = new RequestOptions({ 
    headers: headers, 
    body : body 
    }); 

    return this.http.delete("http://localhost:8080/backend/tag", options) 
     .map(res => this.extractData(res)) 
     .catch(this.handleError); 
} 
+0

ありがとうございます:D –

+0

これは角張っているかもしれませんが、サーバーサイドに問題があるかもしれません:https://stackoverflow.com/a/25237188/3806701 –

+0

Angular 5で、RequestOptionsは推奨されません。https:// angular .io/api/http/RequestOptions –

関連する問題