2017-09-24 85 views
0

我正在編寫一個C#控制檯應用程序,通過基本身份驗證發送POST請求以從api獲取訪問令牌。我必須通過grant_type =密碼&用戶名= &密碼=,我不知道如何通過這與郵寄請求。到目前爲止,我有具有基本授權的發佈請求

var response = await client.PostAsync(uri, content); 

我是否在內容中傳遞密碼/用戶名,如果是這樣的話?由於

+0

這應該準備 - grant_type =密碼和用戶名=(encryptedusername)和密碼=(encryptedpassword)。 – LeedsWalker

回答

1

你應該使用FormUrlEncodedContent

var parameters = new List<KeyValuePair<string, string>>(); 
parameters.Add(new KeyValuePair<string, string>("grant_type", "password")); 
parameters.Add(new KeyValuePair<string, string>("username", "your_username")); 
parameters.Add(new KeyValuePair<string, string>("password", "your_password")); 

var request = new HttpRequestMessage(HttpMethod.Post, uri) 
{ 
    Content = new FormUrlEncodedContent(parameters) 
}; 

var response = await client.SendAsync(request); 
+0

感謝您的快速響應。 – LeedsWalker

+0

@LeedsWalker,它適合你嗎? –

+0

我有類似的東西,很高興我正在考慮正確的路線。由於今天無法訪問服務器,我將不得不明天進行測試。謝謝你的幫助。 – LeedsWalker