C#的HTTP工具类

C#的HTTP工具类

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

class HttpUtil
{
    //GET请求
    public static string GetRequest(string url, int Timeout)
    {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(url);
        request.Method = "GET";
        request.ContentType = "text/html;charset=UTF-8";
        request.UserAgent = null;
        request.Timeout = Timeout;

        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;
    }
    /*使用
        string url="Http://127.0.0.1/login.jsp?Name=zhangshi&Age=30&Submit=%cc%E+%BD%BB";
        string res = HttpHelper.GetRequest(url, 6000);
        if (res != null)
        {
           T mes = JsonHelper.DeserializeJsonToObject<T>(res)
        }
    */
    

    //获取返回的数据
    public static string GetResponseString(HttpWebResponse webresponse)
    {
        using (Stream s = webresponse.GetResponseStream())
        {
            StreamReader reader = new StreamReader(s, Encoding.UTF8);
            return reader.ReadToEnd();

        }
    }
    
    //POST请求
    public static entity.Result HttpPost(string Url, string postDataStr)
    {
        HttpWebRequest request = (HttpWebRequest)WebRequest.Create(Url);
        request.ContentType = "text/json; charset=utf-8";
        request.Method = "post";
        request.Timeout = 3000;

        byte[] btBodys = Encoding.UTF8.GetBytes(postDataStr);
        request.ContentLength = btBodys.Length;
        request.GetRequestStream().Write(btBodys, 0, btBodys.Length);

        HttpWebResponse response = (HttpWebResponse)request.GetResponse();
        StreamReader streamReader = new StreamReader(response.GetResponseStream(),Encoding.UTF8);
        string responseContent = streamReader.ReadToEnd();

        response.Close();
        streamReader.Close();
        request.Abort();
        response.Close();

        return JsonUtil.JsonToObject<entity.Result>(responseContent);
    }

}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值