C#のバックエンドコールWEBAPI方法

 

最近なぜならあなたはWEBAPIを呼び出す必要があり、バックエンドインターフェースの、次のように彼は、共通のインタフェースを書きました:

タスク<ブール> InvokeWebapi(文字列のURL、文字列のAPI、文字列型、辞書<文字列、文字列> DICS)非同期プライベート静的
{

HttpClientをクライアント=新しいHttpClientを();
client.DefaultRequestHeaders.Add( "承認"、 "基本YWRtaW46cGFzc3dvcmRAcmljZW50LmNvbQ =="); //基本编码后授权码

//client.DefaultRequestHeaders.Add()。
client.BaseAddress =新しいウリ(URL);

client.Timeout = TimeSpan.FromSeconds(510)。
文字列の結果=「」;
(type.ToLower()== "置く")であれば
{
HttpResponseMessage応答。
//包含复杂类型
IF(dics.Keys.Contains( "入力"))
{
IF(DICS!= NULL)
{
foreachの(dics.KeysにおけるVARアイテム)
{
API = api.Replace(項目、DICS [アイテム]) .Replace( "{"、 "").Replace( "}"、 "");
}
}
VARの内容=新しいStringContent(DICS [ "入力"]、Encoding.UTF8、 "アプリケーション/ JSON")。
応答= client.PutAsync(API、コンテンツ).Result。
(応答の場合。

結果=)は(response.Content.ReadAsStringAsyncを待ちます。
trueを返します。
}
falseを返します。
}

VAR含量=新しいFormUrlEncodedContent(DICS)。
応答= client.PutAsync(API、コンテンツ).Result。
IF(response.IsSuccessStatusCode)
{
結果= response.Content.ReadAsStringAsyncを待ちます()。
trueを返します。
}
}
そうであれば(type.ToLower()== "POST")
{
VAR含量=新しいFormUrlEncodedContent(DICS)。

HttpResponseMessage応答= client.PostAsync(API、コンテンツ).Result。
IF(response.IsSuccessStatusCode)
{
結果= response.Content.ReadAsStringAsyncを待ちます()。
trueを返します。
}
}
そうであれば(type.ToLower()== "GET")
{
HttpResponseMessage応答= client.GetAsync(API).Result。

IF(response.IsSuccessStatusCode)
{
結果= response.Content.ReadAsStringAsyncを待ちます()。
trueを返します。
}
}

{
falseを返します。
}
falseを返します。
}

おすすめ

転載: www.cnblogs.com/wutongcoding/p/11512282.html