zoukankan      html  css  js  c++  java
  • C#获得cookie的值

    //得到cookie值的方法

    [STAThread]    

    public static string RemoteLogin(string strLoginUrl, string strPostData, string cookieName)    

    {        

      CookieContainer cContainer=new CookieContainer();        

      byte[] data = System.Text.Encoding.ASCII.GetBytes(strPostData);        

      string bResult = "";

          HttpWebRequest myreq = (HttpWebRequest)WebRequest.Create(strLoginUrl);        

      myreq.Referer = strLoginUrl;        

      myreq.Method = "POST";        

      myreq.KeepAlive = true;        

      myreq.AllowAutoRedirect = false;        

      myreq.ContentLength = data.Length;        

       //cookieContainer = new CookieContainer();        

      myreq.CookieContainer = cContainer;        

      myreq.ContentType = "application/x-www-form-urlencoded";

            //这个在Post的时候,一定要加上,如果服务器返回错误,他还会继续再去请求,不会使用之前的错误数据,做返回数据                          

        myreq.ServicePoint.Expect100Continue = false;        

      HttpRequestCachePolicy noCachePolicy = new HttpRequestCachePolicy(HttpRequestCacheLevel.NoCacheNoStore);                             myreq.CachePolicy = noCachePolicy;

           try        

        {            

          Stream newStream = myreq.GetRequestStream();            

          newStream.Write(data, 0, data.Length);            

          newStream.Close();

                  HttpWebResponse myres = (HttpWebResponse)myreq.GetResponse();            

          StreamReader stream;            

          Encoding encoding;            

          if (!string.IsNullOrEmpty(myres.CharacterSet))            

          {                

            encoding = Encoding.GetEncoding(myres.CharacterSet);            

          }            

          else            

          {                

            encoding = Encoding.Default;            

          }            

          stream = new StreamReader(myres.GetResponseStream(), encoding);            

          string strHtml = stream.ReadToEnd();            

          //LogCommon.ilogDebug.Debug(strHtml);                

          if (myres.Cookies[cookieName] != null && !string.IsNullOrEmpty(myres.Cookies[cookieName].Value))                                            {                    

            bResult = myres.Cookies[cookieName].Value;                

          }

                    if (myreq != null)  myreq.Abort();            

             myres.Close();        

          }        

        catch (Exception ex)        

        {             throw ex;         }        

         return bResult;    

    }

    //调用

    RemoteLogin(请求的url,请求需要的参数,cookie的key);

  • 相关阅读:
    JSDoc使用指南
    听创始人讲Quora为什么选择Python
    Bootstrap model模态框与百度地图API发生冲突时的解决办法
    使用百度地图API制作线路轨迹播放
    EF+Mysql+DDD框架搭建(一)——code first准备
    RowNumber()分页方法
    设计模式六大原则
    温习.net基础知识(二)装箱和拆箱
    温习.net基础知识(一)基础知识点
    c# 跨域api
  • 原文地址:https://www.cnblogs.com/eryang/p/2659057.html
Copyright © 2011-2022 走看看