/// <summary>
/// http协议 post数据 接受返回结果
/// </summary>
/// <param name="url"></param>
/// <param name="paramName"></param>
/// <param name="paramValue"></param>
/// <returns></returns>
protected string PostRequest(string url, List<string> paramName, List<string> paramValue)
{
string result = string.Empty;
try
{
if (paramName != null && paramValue != null)
{
// 编辑并Encoding提交的数据
StringBuilder sbuilder = new StringBuilder(paramName[0] + "=" + paramValue[0]);
for (int i = 1; i < paramName.Count; i++)
sbuilder.Append("&" + paramName[i] + "=" + paramValue[i]);
//byte[] data = Encoding.Default.GetBytes(sbuilder.ToString());
byte[] data = Encoding.UTF8.GetBytes(sbuilder.ToString());
// 发送请求
System.Net.HttpWebRequest request = (System.Net.HttpWebRequest)System.Net.WebRequest.Create(url);
request.Method = "POST";
request.ContentType = "application/x-www-form-urlencoded";
request.ContentLength = data.Length;
using (Stream stream = request.GetRequestStream())
{
stream.Write(data, 0, data.Length);
stream.Close();
}
// 获得回复
System.Net.HttpWebResponse response = (System.Net.HttpWebResponse)request.GetResponse();
using (StreamReader reader = new StreamReader(response.GetResponseStream(), Encoding.UTF8))
{
result = reader.ReadToEnd();
reader.Close();
response.Close();
}
}
}
catch (Exception ex)
{
Log.Fatal("异常!"+ex.Message);//记录错误log
if (ex == null)
ex = null;
}
return result;
}
相关文章
- 拦截器获取被拦截方法的参数和返回值,并判断传参是否为空
- JSF页面中使用js函数回调后台bean方法并获取返回值的方法
- ASP.NET 关于头信息提交GET/POST 怎么处理访问数据获取返回值
- ASP.NET连接数据库并获取数据方法总结
- PHP调用MySQL存储过程并返回值的方法
- 请求Ajax 带返回值的通用方法, 自动获取页面控件值(form表单post方法提交 ),自动给控件赋值
- 如何通过php中的表格中的post方法获取值,并获取表格替换上一个表格
- asp.net异步获取datatable并显示的实现方法
- asp.net实现调用存储过程并带返回值的方法
- C#调用批处理(bat)文件,并获取执行批处理(bat)文件后返回值