zoukankan      html  css  js  c++  java
  • 怎么利用C#中的 webclient 创建cookie

    Cookies are not limited only to web browsers. any http-aware client that supports cookies can deal with a cookie sending aSp .net Web api. the following code example shows a class extended from WebClient. it overrides the virtual method GetWebRequest to attach an instance of CookieContainer to the request. the CookieContainer object instance has to be reused across the requests to let it push cookies in the subsequent requests. For this reason, it is a class-level field and the same instance of the web client is used to send multiple requests. here we use a proxy of address localhost and port 8888, that of Fiddler, to inspect requests and responses.

    public class CookieWebClient : WebClient
    {
        private CookieContainer jar = new CookieContainer();
        protected override WebRequest GetWebRequest(Uri address)
        {
    
            WebRequest request = base.GetWebRequest(address);
            HttpWebRequest webRequest = request as HttpWebRequest;
            if (webRequest != null)
                webRequest.CookieContainer = jar;
            return request;
        }
    }
    public class TestClass
    {
        public void MyTestMethod()
        {
            string url = "http://localhost:7077/api/employees/12345";
    
            CookieWebClient client = new CookieWebClient()
            {
                Proxy = new WebProxy("localhost", 8888)    // Fiddler 
            };
            Console.WriteLine(client.DownloadString(url)); //  In this request, the cookie gets sent back to the web API
        }
    }
  • 相关阅读:
    网络编程(1)
    反射,魔法方法,单例模式
    远程的文件传输
    DNS
    windows服务
    outlook邮箱配置
    win7服务器搭建
    windows常用命令
    C盘满了怎么办
    0x80070035找不到网络路径
  • 原文地址:https://www.cnblogs.com/haoliansheng/p/4802279.html
Copyright © 2011-2022 走看看