zoukankan      html  css  js  c++  java
  • 创建HttpRequest传输数据

    代码
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.IO;
    using System.Net;

    namespace Bookmark.HttpAPI
    {
        
    public class WebRequestAPI
        {
            
    private static CookieContainer cookie=new CookieContainer ();


            
    #region 同步通过POST方式发送数据
            
    /// <summary>
            
    /// 通过POST方式发送数据
            
    /// </summary>
            
    /// <param name="Url">url</param>
            
    /// <param name="postDataStr">Post数据</param>
            
    /// <param name="cookie">Cookie容器</param>
            
    /// <returns></returns>
            public static string SendDataByPost(string Url, string postDataStr)
            {
                HttpWebRequest request 
    = (HttpWebRequest)WebRequest.Create(Url);
                
    if (cookie.Count == 0)
                {
                    request.CookieContainer 
    = new CookieContainer();
                    cookie 
    = request.CookieContainer;
                }
                
    else
                {
                    request.CookieContainer 
    = cookie;
                }

                request.Method 
    = "POST";
                request.ContentType 
    = "application/x-www-form-urlencoded";
                request.ContentLength 
    = postDataStr.Length;
                Stream myRequestStream 
    = request.GetRequestStream();
                StreamWriter myStreamWriter 
    = new StreamWriter(myRequestStream, Encoding.GetEncoding("gb2312"));
                myStreamWriter.Write(postDataStr);
                myStreamWriter.Close();

                HttpWebResponse response 
    = (HttpWebResponse)request.GetResponse();
                Stream myResponseStream 
    = response.GetResponseStream();
                StreamReader myStreamReader 
    = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
                
    string retString = myStreamReader.ReadToEnd();
                myStreamReader.Close();
                myResponseStream.Close();

                
    return retString;
            }
            
    #endregion

            
    #region 同步通过GET方式发送数据
            
    /// <summary>
            
    /// 通过GET方式发送数据
            
    /// </summary>
            
    /// <param name="Url">url</param>
            
    /// <param name="postDataStr">GET数据</param>
            
    /// <param name="cookie">GET容器</param>
            
    /// <returns></returns>
            public static string SendDataByGET(string Url, string postDataStr)
            {
                HttpWebRequest request 
    = (HttpWebRequest)WebRequest.Create(Url + (postDataStr == "" ? "" : "?"+ postDataStr);
                
    if (cookie.Count == 0)
                {
                    request.CookieContainer 
    = new CookieContainer();
                    cookie 
    = request.CookieContainer;
                }
                
    else
                {
                    request.CookieContainer 
    = cookie;
                }

                request.Method 
    = "GET";
                request.ContentType 
    = "text/html;charset=UTF-8";

                HttpWebResponse response 
    = (HttpWebResponse)request.GetResponse();
                Stream myResponseStream 
    = response.GetResponseStream();
                StreamReader myStreamReader 
    = new StreamReader(myResponseStream, Encoding.GetEncoding("utf-8"));
                
    string retString = myStreamReader.ReadToEnd();
                myStreamReader.Close();
                myResponseStream.Close();

                
    return retString;
            }
            
    #endregion
        }
    }
  • 相关阅读:
    SAX方式解析XML文件实例
    DOM方式解析XML文件实例
    国外程序员整理的Java资源
    研发十大站点
    UMA
    [转]Hadoop YARN任务提交流程
    JAVA的内存模型
    2014年总结
    Storm因机器断电等,启动supervisor异常
    Python几个算法实现
  • 原文地址:https://www.cnblogs.com/hubcarl/p/1732492.html
Copyright © 2011-2022 走看看