winform中发送post请求的代码,远程服务器返回错误: (415) Unsupported Media Type。

xingchendaojun 2017-04-18 03:23:25
string name = this.txtUserName.Text.Trim();
string pwd = this.txtPwd.Text.Trim();
Dictionary<string, string> dic=new Dictionary<string,string>();
dic.Add("username", name);
dic.Add("password", pwd);
string url = "http://101.37.84.120:8091/smartmeasure_platform/api/phone/login";
string result = HttpWebUtility.Post(url, dic);

public static string Post(string url, Dictionary<string, string> dic)
{
string result = "";
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Accept = "text/json,*/*;q=0.5";
req.Headers.Add("Accept-Charset", "utf-8;q=0.7,*;q=0.7");
req.Headers.Add("Accept-Encoding", "gzip, deflate, x-gzip, identity; q=0.9");
req.AutomaticDecompression = System.Net.DecompressionMethods.GZip;
req.Timeout = 8000;

req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded; charset=utf-8";
#region 添加Post 参数
StringBuilder builder = new StringBuilder();
int i = 0;
foreach (var item in dic)
{
if (i > 0)
builder.Append("&");
builder.AppendFormat("{0}={1}", item.Key, item.Value);
i++;
}

//Encoding.GetEncoding("GBK");
byte[] data = Encoding.UTF8.GetBytes(builder.ToString());
//byte[] data = Encoding.ASCII.GetBytes(builder.ToString());
req.ContentLength = data.Length;
using (Stream reqStream = req.GetRequestStream())
{
reqStream.Write(data, 0, data.Length);
reqStream.Close();
}
#endregion
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
Stream stream = resp.GetResponseStream();
//获取响应内容
using (StreamReader reader = new StreamReader(stream, Encoding.UTF8))
{
result = reader.ReadToEnd();
}
return result;
}
...全文
543 1 打赏 收藏 转发到动态 举报
写回复
用AI写文章
1 条回复
切换为时间正序
请发表友善的回复…
发表回复
by_封爱 版主 2017-04-18
  • 打赏
  • 举报
回复

  req.Accept = "text/json,*/*;q=0.5";
 req.Headers.Add("Accept-Charset", "utf-8;q=0.7,*;q=0.7");
  req.Headers.Add("Accept-Encoding", "gzip, deflate, x-gzip, identity; q=0.9");
  req.AutomaticDecompression = System.Net.DecompressionMethods.GZip;
这几句话都没什么用 删了吧

110,539

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧