私は、angel 2アプリケーションからasp.net mvc web apiコントローラアクションを呼び出しています。しかし、私はそれは、getになりたい、ポストを行うにはしたくないので、私は角2からこれを呼び出していたときに、私のような何かをしたい非文字列関連のデータをgetリクエストに渡す方法web api
[Route("api/getItems")]
[HttpPost]
public ReturnObject GetItems(DateRangeVM dateRange){
}
:私はこのような呼び出しからオブジェクトを受け入れることができますこの:
return this.http.post(this.API_URL_BASE + '/api/getItems', dateRange, defaultOptions).map((response: Response) => {
return <any[]>response.json();
}).catch(this.handleError);
}
が、実際にはもっとこのような:
return this.http.get(this.API_URL_BASE + '/api/getItems', dateRange, defaultOptions).map((response: Response) => {
return <any[]>response.json();
}).catch(this.handleError);
}
しかし、この最後のオプションは、第二のオプションとして、データを受け付けません。私は文字列引数としてデータを渡したくありません。これは、データがより複雑になると、これが面倒です。
' $ http.get'のみクエリパラメータを取ることができ、あなたはこれを行うには意味していますか? – Sajal
しかし、あなたは、クエリ内のペイロードを送信することはできません変更することができ、良い習慣ではありません。なぜ '$ http.post'にこだわるのでしょうか? – Sajal
"データが文字列引数として渡されるのを避けたいのは、データが複雑になったときにこれが乱雑であるからです。"パラメータは文字列ではなく、別のオブジェクト内のオブジェクトのセットです。 – Sam