zoukankan      html  css  js  c++  java
  • C# 调用POST请求

            public static void PostUrl_Ex(string url, string postData)
            {
                try
                {
                    //对于提交内容中的中文使用UrlEncode方式编码 发送
                    //string dataSource = "name=1234&qq=1234421&topicName=%E5%BA%86%E7%86%99%E5%A4%A7%E5%AD%A6MBA";
                    string dataSource = postData;
                    //Http协议内容 使用ASCII码字符
                    byte[] data = Encoding.ASCII.GetBytes(dataSource);
    
                    //发送信息
                    //HttpWebRequest req = WebRequest.CreateHttp(url);
                    HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
                    req.Method = "post";
                    req.ContentType = "application/json";
    
                    //req.Timeout = 5 * 1000;//请求超时时间
    
                    //Accept - Language:zh - CN,zh; q = 0.8
                    req.Headers.Add("Accept-Language", "zh - CN,zh; q = 0.8");
                    req.Credentials = new NetworkCredential("root", "root123");
    
                    //指定客户端代理的方式
                    //req.UserAgent = "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2560.0 Safari/537.36";
                    //此方式不可用
                    //req.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/48.0.2560.0 Safari/537.36");
                    //添加Post参数
                    Stream reqStream = req.GetRequestStream();
                    reqStream.Write(data, 0, data.Length);
                    reqStream.Close();
    
                    //接收相应
                    HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
                    Stream respStream = resp.GetResponseStream();
                    StreamReader reader = new StreamReader(respStream, Encoding.UTF8);
                    string result = reader.ReadToEnd();          
                    reader.Close();
                }
                catch (Exception e)
                {
                   //e.Message.ToString()
                }
            }
     

    
    
            /// <summary>
            /// 
            /// </summary>
            /// <param name="url">为请求地址: http://127.0.0.1:8080/wms/broadcast/startAlarmTaskTTS </param>
            /// <param name="postData">请求内容 Json格式串</param>
            /// <returns></returns>
            public static string PostUrl(string url, string postData)
            {
                string result = "";
                while (true)
                {
                    try
                    {
                        HttpWebRequest req = (HttpWebRequest)WebRequest.Create(url);
                        req.Method = "POST";
                        req.ContentType = "application/json";
                        req.Timeout = 5 * 1000;//请求超时时间
                        //req.ReadWriteTimeout = 5 * 1000;  //访问成功后读写流超时                
                        req.Credentials = new NetworkCredential("root", "root123");
                        //byte[] data = Encoding.UTF8.GetBytes(postData);
                        //req.ContentLength = data.Length;
                        using (var streamWriter = new StreamWriter(req.GetRequestStream()))
                        {
                            streamWriter.Write(postData);
                            streamWriter.Flush();
                            streamWriter.Close();                      
                        }
    
                        HttpWebResponse resp = (HttpWebResponse)req.GetResponse();
                        if (resp.StatusCode != HttpStatusCode.OK) //如果服务器未响应,那么继续等待相应
                            continue;                   
                        Stream stream = resp.GetResponseStream();
                        //获取响应内容
                        using (StreamReader reader = new StreamReader(stream))
                        {
                            result = reader.ReadToEnd();
                        }
                    }
                    catch (Exception e)
                    {
                         MessageBox.Show(e.Message.ToString());
                    }
    
                    return result;               
                }
            }

    本文链接:https://blog.csdn.net/cn_514/article/details/100037524

    欢迎加群交流 QQ群 830426796

  • 相关阅读:
    springboot文件上传: 单个文件上传 和 多个文件上传
    Eclipse:很不错的插件-devStyle,将你的eclipse变成idea风格
    springboot项目搭建:结构和入门程序
    POJ 3169 Layout 差分约束系统
    POJ 3723 Conscription 最小生成树
    POJ 3255 Roadblocks 次短路
    UVA 11367 Full Tank? 最短路
    UVA 10269 Adventure of Super Mario 最短路
    UVA 10603 Fill 最短路
    POJ 2431 Expedition 优先队列
  • 原文地址:https://www.cnblogs.com/yc1224/p/11399867.html
Copyright © 2011-2022 走看看