加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > asp.Net > 正文

C#模拟httpwebrequest请求_向服务器模拟cookie发送

发布时间:2020-12-16 08:56:01 所属栏目:asp.Net 来源:网络整理
导读:使用C#代码模拟web请求,是一种常用的方法,以前没专门整理过,这里暂时贴上自己整理的完整代码,以后再做梳理: ? public class MyRequest { #region 辅助方法 static string HttpGet( string url) { var request = (HttpWebRequest)WebRequest.Create(url)

使用C#代码模拟web请求,是一种常用的方法,以前没专门整理过,这里暂时贴上自己整理的完整代码,以后再做梳理:

?

public class MyRequest
    {
        #region 辅助方法
        static string HttpGet(string url)
        {
            var request = (HttpWebRequest)WebRequest.Create(url);

            var response = (HttpWebResponse)request.GetResponse();
            var responseString = new StreamReader(response.GetResponseStream()).ReadToEnd();
            return responseString;
        }
        /// <summary>
        /// httpPost请求--参数为object
        </summary>
        <param name="url">地址</param>
        <param name="postObject">Post参数传输为对象<returns></returns>
        string HttpPost(string url,object postObject,1)">string at = "",1)">string rt = "")
        {
            string result = .Empty;

            try
            {
                 (HttpWebRequest)WebRequest.Create(url);
                var postData = JsonConvert.SerializeObject(postObject);

                var data = Encoding.UTF8.GetBytes(postData);  //uft-8支持中文
                request.Method = "POST";
                request.ContentType = "application/x-www-form-urlencoded";
                request.ContentType = application/json;charset=UTF-8request.ContentLength = data.Length;

                这里使用了coolie容器,用来模拟向服务器发送cookie信息
                CookieContainer zl_Cookie =  CookieContainer();
                zl_Cookie.Add(new Cookie(at",at,/.zhaopin.com));
                zl_Cookie.Add(rt));
                request.CookieContainer = zl_Cookie;
                
                using (var stream = request.GetRequestStream())
                {
                    stream.Write(data,0,data.Length);
                }

                HttpWebResponse response = (HttpWebResponse)request.GetResponse();

                result =  StreamReader(response.GetResponseStream()).ReadToEnd();
            }
            catch (Exception ex)
            {
                result = ex.Message;
            }
            Console.WriteLine("发送消息结果:" + result);
             result;
        }
         httpPost请求--参数为string
        <param name="postString">post参数参数为字符串 postString)
        {
             (HttpWebRequest)WebRequest.Create(url);

                var data = Encoding.UTF8.GetBytes(postString);  ;
                request.ContentLength = data.Length;

                 ex.Message;
                Console.WriteLine(同步签到大屏发送消息error:" + result);
            }

             result;
        }
        #endregion

    }

?

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读