try
{
string result = "";
HttpWebRequest req = (HttpWebRequest)WebRequest.Create("http://192.168.1.103:8001/oauth/token");
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
#region http请求增加验证auth,本质是把用户名和密码放到了head里
string userName = "m";
string password = "me";
string encoded = Convert.ToBase64String(Encoding.GetEncoding("ISO-8859-1").GetBytes($"{userName}:{password}"));
req.Headers.Add("Authorization", $"Basic {encoded}");
#endregion
#region 添加Post 参数
StringBuilder builder = new StringBuilder();
builder.Append("grant_type=password&");
builder.Append("password=123456&");
builder.Append("scope=all&");
builder.Append("username=13333333331");
//int i = 0;
//foreach (var item in dic)
//{
// if (i > 0)
// builder.Append("&");
// builder.AppendFormat("{0}={1}", item.Key, item.Value);
// i++;
//}
byte[] data = Encoding.UTF8.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();
}
}
catch (Exception ex) {
MessageBox.Show(ex.ToString());
}