浅析python中cookie写入和读取

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了浅析python中cookie写入和读取相关的知识,希望对你有一定的参考价值。

参考技术A 通常情况下,一个请求对于cookie有不同的操作方式,如cookie写入和cookie读取2种最基本的方式.

cookie的读取
url = self.get_response_url()+"&callback=jQuery21008240514814031887_1508666806688&_=1508666806689"
cookie = requests.get(url).cookies
return cookie
这里的cookie的读取是通过url请求返回cookie得到cookiejar的值

cookie写入
cookie = requests.utils.dict_from_cookiejar(self.get_cookie())
op_json = OperetionJson()
op_json.write_data(cookie)
这里的cookie的写入是通过获取后,在cookiejar的dict中获取到cookie,然后将cookie写入到json中,即可实现cookie写入的功能.

如何在 C# 和 ASP.NET MVC 中读取/写入 cookie

【中文标题】如何在 C# 和 ASP.NET MVC 中读取/写入 cookie【英文标题】:How can read / write cookie in C# & ASP.NET MVC 【发布时间】:2019-01-05 18:00:44 【问题描述】:

我的cookie有问题,这是我在课堂上的读写代码:

public static class language

   public static void set_default(string name)
   
       HttpContext.Current.Response.Cookies.Remove("language");
       HttpCookie language = new HttpCookie("language");
       language["name"] = name;
       language.Expires = DateTime.Now.AddDays(1d);
       HttpContext.Current.Response.Cookies.Add(language);
   

   public static string get_default()
   
       string name = string.Empty;
       HttpCookie langauge = HttpContext.Current.Response.Cookies.Get("language");
       name = langauge["name"];
       return name;
   

当我转到下一页并使用@language.get_default() 获取默认语言时,响应为null - 为什么?

【问题讨论】:

【参考方案1】:

在编写 cookie 时,您将 cookie 添加到 Response。阅读它们时,您应该使用Request

HttpCookie language = HttpContext.Current.Request.Cookies.Get("language");

所以set_default() 是正确的,但你应该更改为get_default()

【讨论】:

【参考方案2】:

我不确定language.Expires = DateTime.Now.AddDays(1d); 是否正确。 DateTime.Now.AddDays 接受整数,而 1d 不接受。

创建饼干:

HttpContext.Response.Cookies.Append("language", "ENGLISH", new CookieOptions()
            
                Expires = DateTime.Now.AddDays(5)
            );

获取饼干:

 string language = HttpContext.Request.Cookies["language"];

删除饼干:

HttpContext.Response.Cookies.Append("language", "", new CookieOptions()
            
                Expires = DateTime.Now.AddDays(-1)
            );

HttpContext.Response.Cookies.Delete("language");

【讨论】:

以上是关于浅析python中cookie写入和读取的主要内容,如果未能解决你的问题,请参考以下文章

javascript 写入和读取cookie

如何在 C# 和 ASP.NET MVC 中读取/写入 cookie

Java是如何读取和写入浏览器Cookies的

iOS开发WKWebView Cookie的读取与写入,与UIWebView的Cookie共享

jquery.cookie() 方法的使用(读取写入删除)

iOS 和 OS X 上的原生应用程序能否写入和读取 Safari 的网站数据,例如 cookie 和 Web Storage?