在做一个项目(winform)需要调用Java提供的接口,然后就直接使用HttpWebRequest、HttpWebResponse结果怎么搞都不行。。。。。
在这里记录一下:url:接口地址;postdata:参数
public string HWRPost(string url, string postdata)
{
string result = "";
HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
req.Method = "POST";
req.ContentType = "application/x-www-form-urlencoded";
req.Referer = null;
req.AllowAutoRedirect = true;
req.Accept = "*/*";
byte[] data = Encoding.UTF8.GetBytes(postdata);
using (Stream reqStream = req.GetRequestStream())
{
reqStream.Write(data, 0, data.Length);
}
HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
//获取响应内容
using (StreamReader reader = new StreamReader(resp.GetResponseStream()))
{
result = reader.ReadToEnd();
}
return result;
}
调用例子:
string postData = $"username=111&password=www&userType=2"; //按照POST字符串做相应修改。
string url = "http://****ip地址*****/imcustomerweb/officer/login"; //请求地址
string result= HWRPost(url, postData);
这样是没问题的。在此记录一下。