远程带参数POST访问接口,返回数据
2018-04-04 16:00
399 查看
1.
Class
public class Projectzz { private static readonly string DefaultUserAgent = "Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.2; SV1; .NET CLR 1.1.4322; .NET CLR 2.0.50727)"; private static bool CheckValidationResult(object sender, X509Certificate certificate, X509Chain chain, SslPolicyErrors errors) { return true; //总是接受 } public static HttpWebResponse CreatePostHttpResponse(string url, IDictionary<string, string> parameters, Encoding charset) { HttpWebRequest request = null; //HTTPSQ请求 ServicePointManager.ServerCertificateValidationCallback = new RemoteCertificateValidationCallback(CheckValidationResult); request = WebRequest.Create(url) as HttpWebRequest; request.ProtocolVersion = HttpVersion.Version10; request.Method = "POST"; request.ContentType = "application/x-www-form-urlencoded"; request.UserAgent = DefaultUserAgent; //如果需要POST数据 if (!(parameters == null || parameters.Count == 0)) { StringBuilder buffer = new StringBuilder(); int i = 0; foreach (string key in parameters.Keys) { if (i > 0) { buffer.AppendFormat("&{0}={1}", key, parameters[key]); } else { buffer.AppendFormat("{0}={1}", key, parameters[key]); } i++; } byte[] data = charset.GetBytes(buffer.ToString()); // string sRemoteInfo = System.Text.Encoding.Default.GetString(data); using (Stream stream = request.GetRequestStream()) { stream.Write(data, 0, data.Length); } } return request.GetResponse() as HttpWebResponse; } //static void Main(string[] args) //{ // string url = "http://116.62.34.164/get_customer_list"; // Encoding encoding = Encoding.GetEncoding("utf-8"); // IDictionary<string, string> parameters = new Dictionary<string, string>(); // parameters.Add("token", "943wski12937"); // parameters.Add("customer_id", "3618"); // HttpWebResponse response = Program.CreatePostHttpResponse(url, parameters, encoding); // //打印返回值 // Stream stream = response.GetResponseStream(); //获取响应的字符串流 // StreamReader sr = new StreamReader(stream); //创建一个stream读取流 // string html = sr.ReadToEnd(); //从头读到尾,放到字符串html // Console.WriteLine(html); //} }
Class
相关文章推荐
- 纯java方式访问远程WebService接口返回的xml格式的数据保存在本地
- 实习第一天——做一个录音上传服务器的小功能pttp协议post发送文件和参数到服务器,解析返回的json数据
- HttpURL连接远程服务器Get和Post方式请求并返回数据
- 通过SSH协议访问远程Shell脚本-免密码登陆与返回数据丢失解决
- [C#]Winform后台提交数据且获取远程接口返回的XML数据,转换成DataSet
- HttpClient以json形式的参数调用http接口并对返回的json数据进行处理(可以带文件)
- java通过url调用远程接口返回json数据,有用户名和密码验证
- 使用httpPost进行访问远程接口
- 链接服务器 '(null)' 的 OLE DB 访问接口'STREAM' 返回了对列 '[!BulkInsert].field' 无效的数据
- AIDL实现不同应用之间跨进程通讯及传递与返回各种数据类型和远程接口回调
- HttpClient以json形式的参数调用http接口并对返回的json数据进行处理(可以带文件)
- c# 通过访问URL,获取并解析远程服务端返回的复杂Json数据
- Post提交数据到接口或网址 获取返回数据
- php 调用接口的post方法,还有解析返回的xml数据
- 向指定 URL 发送GET,POST方法的请求(传入指定url和参数,服务器返回字符串数据)
- curl post参数,接口接收不到数据问题
- 向SQL Server2005里导入数据是出现错误“SQL 错误描述为: 链接服务器 '(null)' 的 OLE DB 访问接口'STREAM' 返回了对列 '[!BulkInsert].field' 无效的数据”
- [C#]Winform后台提交数据且获取远程接口返回的XML数据,转换成DataSet
- Post提交数据到接口或网址 获取返回数据
- HttpURL连接远程serverGet和Post方式请求并返回数据