从 C# WinApp 在 HttpWebRequest 中设置 cookie

Set cookie in HttpWebRequest from C# WinApp

我正在尝试从 c# winapp 创建一个 HttpWebRequest

我从googlechrome开发者工具中得到了以下请求头(省略了不必要的部分)-

Cookie: PHPSESSID=f530kslitnsq7uho33auebkd11;ciIPPBXOBd=TOAf5yvdIlHf7Ak%3D

我的代码是-

HttpWebRequest request = (HttpWebRequest)WebRequest.Create("example.com");
Cookie cookie = new Cookie("PHPSESSID", "f533auebkd11") { Domain = "example.com" };
request.CookieContainer.Add(cookie);

但我在最后一行收到对象引用空错误。

如何去除?

默认情况下,cookie 容器为空。 试试这个。

   HttpWebRequest request = (HttpWebRequest)WebRequest.Create("http://www.google.com");
        Cookie cookie = new Cookie("PHPSESSID", "f533auebkd11") { Domain = "example.com" };
        //if cookie contaner is null then try new container
        request.CookieContainer =  request.CookieContainer ?? new CookieContainer();
        request.CookieContainer.Add(cookie);