zoukankan      html  css  js  c++  java
  • .Net提交POST

    View Code
     1         #region Post到url
    2 ///<summary>
    3 /// Post data到url
    4 ///</summary>
    5 ///<param name="data">要post的数据</param>
    6 ///<param name="url">目标url</param>
    7 ///<returns>服务器响应</returns>
    8 public static string PostDataToUrl(string data, string url)
    9 {
    10 // Encoding encoding = Encoding.GetEncoding(sRequestEncoding);
    11 Encoding encoding = Encoding.Default;
    12 byte[] bytesToPost = encoding.GetBytes(data);
    13 return PostDataToUrl(bytesToPost, url);
    14 }
    15
    16 ///<summary>
    17 /// Post data到url
    18 ///</summary>
    19 ///<param name="data">要post的数据</param>
    20 ///<param name="url">目标url</param>
    21 ///<returns>服务器响应</returns>
    22 public static string PostDataToUrl(byte[] data, string url)
    23 {
    24 #region 创建httpWebRequest对象
    25 WebRequest webRequest = WebRequest.Create(url);
    26 HttpWebRequest httpRequest = webRequest as HttpWebRequest;
    27 if (httpRequest == null)
    28 {
    29 throw new ApplicationException(string.Format("Invalid url string: {0}", url));
    30 }
    31 #endregion
    32
    33 #region 填充httpWebRequest的基本信息
    34 httpRequest.UserAgent = sUserAgent;
    35 httpRequest.ContentType = sContentType;
    36 //httpRequest.Headers.Add(HttpRequestHeader.ContentEncoding, "utf-8");
    37 httpRequest.Method = "POST";
    38 #endregion
    39
    40 #region 填充要post的内容
    41 httpRequest.ContentLength = data.Length;
    42 Stream requestStream = httpRequest.GetRequestStream();
    43 requestStream.Write(data, 0, data.Length);
    44 requestStream.Close();
    45 #endregion
    46
    47 #region 发送post请求到服务器并读取服务器返回信息
    48 Stream responseStream;
    49 try
    50 {
    51 responseStream = httpRequest.GetResponse().GetResponseStream();
    52 }
    53 catch (Exception e)
    54 {
    55 // log error
    56 Console.WriteLine(
    57 string.Format("POST操作发生异常:{0}", e.Message));
    58 throw e;
    59 }
    60 #endregion
    61
    62 #region 读取服务器返回信息
    63 string stringResponse = string.Empty;
    64 //StreamReader responseReader = new StreamReader(responseStream, Encoding.GetEncoding(sResponseEncoding))
    65 using (StreamReader responseReader = new StreamReader(responseStream, Encoding.Default))
    66 {
    67 stringResponse = responseReader.ReadToEnd();
    68 }
    69 responseStream.Close();
    70 #endregion
    71 return stringResponse;
    72 }
    73 const string sUserAgent = "Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.2; .NET CLR 1.1.4322; .NET CLR 2.0.50727)";
    74 const string sContentType = "application/x-www-form-urlencoded";
    75 const string sRequestEncoding = "ascii";
    76 const string sResponseEncoding = "gb2312";
    77 #endregion

      


  • 相关阅读:
    面向对象--封装
    面向对象--多态
    面向对象编程
    类的特殊成员
    新式类 VS 经典类
    python类的继承
    python析构函数
    类的公有属性
    (转)JAVA AJAX教程第二章-JAVASCRIPT基础知识
    (转)JAVA AJAX教程第一章-初始AJAX
  • 原文地址:https://www.cnblogs.com/yuxuan/p/2151910.html
Copyright © 2011-2022 走看看