C# 如何在HttpClient中使用request.AddParameter(restsharp)
我有这个代码,并且工作过C# 如何在HttpClient中使用request.AddParameter(restsharp),c#,dotnet-httpclient,C#,Dotnet Httpclient,我有这个代码,并且工作过 string userName = "username"; string password = "password"; string clientSecret = "clientSecretCode"; var client = new RestClient("url"); var request = new RestRequest(Method.POST); request.AddHead
string userName = "username";
string password = "password";
string clientSecret = "clientSecretCode";
var client = new RestClient("url");
var request = new RestRequest(Method.POST);
request.AddHeader("Content-Type", "application/x-www-form-urlencoded");
request.AddParameter("undefined",
$"grant_type=password&username={userName}&password={password}&client_id=mmp-web-api&client_secret={clientSecret}&scope=openid%20mmp-webpanel",
ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
var result = JsonConvert.DeserializeObject<TokenOutputDto>(response.Content);
如何将此代码转换为httpclient(在没有RestSharp的情况下运行)string userName=“userName”;
字符串password=“password”;
字符串clientSecret=“clientSecretCode”;
HttpClient HttpClient=新HttpClient();
Uri requestUri=新Uri(“您的完整URL”);
httpClient.DefaultRequestHeaders
接受
.Add(新的MediaTypeWithQualityHeaderValue(“application/x-www-form-urlencoded”)//接受标题
//参数
var content=newformurlencodedcontent(new[]
{
新的KeyValuePair(“undefined”、$“grant_type=password&username={username}&password={password}&client_id=mmp web api&client_secret={clientSecret}&scope=openid%20mmp webpanel”)
});
var response=httpClient.PostAsync(requestUri.ToString(),content).Result;
var token=response.Content.ReadAsStringAsync().Result;
var result=JsonConvert.DeserializeObject(令牌);
public class TokenOutputDto
{
public string access_token { get; set; }
}
string userName = "username";
string password = "password";
string clientSecret = "clientSecretCode";
HttpClient httpClient = new HttpClient();
Uri requestUri = new Uri("Your Complete URL");
httpClient.DefaultRequestHeaders
.Accept
.Add(new MediaTypeWithQualityHeaderValue("application/x-www-form-urlencoded"));//ACCEPT header
// Parameter
var content = new FormUrlEncodedContent(new[]
{
new KeyValuePair<string, string>("undefined", $"grant_type=password&username={userName}&password={password}&client_id=mmp-web-api&client_secret={clientSecret}&scope=openid%20mmp-webpanel")
});
var response = httpClient.PostAsync(requestUri.ToString(), content).Result;
var token = response.Content.ReadAsStringAsync().Result;
var result = JsonConvert.DeserializeObject<TokenOutputDto>(token);