2017-02-16 12 views
0

2つのパラメータを必要とする削除リクエストを行う必要がありますが、どうすればよいかわかりません。角2 - パラメータ付きリクエストの削除

私のコードは次のようになります。

public deleteDefinition(typeName: string, id: number) { 
    console.log("in API call"); 
    const path = `${this.apiEndpoint}/Definition/Delete/`; 
    return this.http.delete(path, typeName, id) 
     .map((response: Response) => response.json()) 
     .catch(this.handleError); 
} 

しかし、私は

指定されたパラメータは、コールのターゲットのいずれかの署名と一致していないerrrorを受け続けます。

構文にはどのような誤りがありますか?

ありがとうございます!

+1

署名は 'http.delete(url、options)'です。あなたはURLに 'id'を含めるべきです。あなたの 'typeName'パラメータに関して、私はそれが何を意味するのか分かりません。 – AngularChef

+0

@AngularFrance大丈夫なので、変数パスにparamsを含めるように変更しましたが、今は 'return this.http.delete(path)'を実行しますが、何も起こりません。私のコンソールで私は要求を見ることさえできません。だから、まったく電話をしていませんか? – Nicolas

+2

Observablesは**サブスクライブされているときにのみ**実行されます。あなたのコードのどこかに 'XXX.deleteDefinition(a、b).subscribe()'のようなものがあることを確認できますか? – AngularChef

答えて

1

HTTP DELETEアクションに本文メッセージを渡すことは、現在、Angular 2ではサポートされていません.HTTP DELETE呼び出しは、本体に追加情報を送信するためのものではありません。

URL構造を変更して、本文に情報を入力する必要はありません。

もう1つの解決策は、DELETEではなくPOSTを使用することです。 POSTでは、メッセージ本文を指定することができます。

関連する問題