dotnethttpclient-如何在c#中发布数值
本文关键字:布数值 dotnethttpclient- | 更新日期: 2023-09-27 17:59:18
我正在尝试使用HTTPclient发布到第三方api并获得响应。我可以发布到api,但我遇到的问题是api要求programid是数字。每当我试图发布这段代码时,它都会把它扔回去,告诉我让programid变为数字。
我不知道如何通过c#/.net在后发送数字
using (var client = new HttpClient())
{
var values = new Dictionary<string, string>
{
{ "accesstoken", authtoken },
{ "programid", programid},
{ "email", person.Email },
{ "thirdparty1", person.ID.ToString() }
};
var content = new FormUrlEncodedContent(values);
var response = client.PostAsync("url", content);
var responseString = response.Result.Content.ReadAsStringAsync();
}
也许是WebClient?
using (var client = new WebClient())
{
var values = new Dictionary<string, string>
{
{ "accesstoken", authtoken },
{ "programid", programid.ToString()},
{ "email", person.Email },
{ "thirdparty1", person.ID.ToString() }
};
var param = string.Join("&", values.Select(x => x.Key + "=" + x.Value).ToArray());
client.Headers[HttpRequestHeader.ContentType] = "application/x-www-form-urlencoded";
string HtmlResult = client.UploadString(URI, "POST", param);
}
只要确保你没有传递任何有趣的url路由字符,比如?或者&