2017-03-22 6 views
1

私はASP.NET Web API 2を初めて使用しています。私はサードパーティのAPIにアクセスしようとしています。ヘッダーにAPI URLを追加します。私は郵便配達でデータにアクセスできますが、私はコードでそれを行うことができません。HttpClientを使用してWeb APIでヘッダ値を渡す方法

以下は私のコードですが、私が正しい方向に向いているかどうかはわかりません。どんな助けもありがとう。

using (var client = new HttpClient()) 
{ 
    client.BaseAddress = new Uri("Url"); 
    client.DefaultRequestHeaders.Accept.Clear(); 
    client.DefaultRequestHeaders.Accept.Add(new HttpContext.Current.Request.Headers.Add("Authorization", "Token "+ "MyToken"); 
    var re = Request; 
    var headers = re.Headers; 

    if (headers.Contains("Token")) 
    { 
     string token = headers.GetValues("Token").First(); 
    } 

    return null; 

} 
+0

post manと連携する(サニタイズされた)生のリクエストを表示する – Nkosi

答えて

2

そのすべての要求に対してHttpClientのデフォルトの許可ヘッダーを設定すると、次の例のようにclient.DefaultRequestHeaders.Authorization

AuthenticationHeaderValueセットを使用している場合...

//...other code removed for brevity 

var tokenType = "Token"; //Other APIs use Bearer or other auth types. 
var token = "MyToken"; 
client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue(tokenType, token); 

//...other code removed for brevity. 

使用して行われたすべてのリクエストクライアントは認証ヘッダーを持ちます

Authorization Token MyToken 
関連する問題