让python的Cookie.py模块支持冒号做key的方法
2018-10-15 17:37
为了做好兼容性,只能选择兼容:冒号。
很简单,修改一下Cookie.Morsel
复制代码 代码如下:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import Cookie
import string
_Morsel = Cookie.Morsel
class MorselHook(_Morsel):
>>> import inspect
>>> (inspect.getargspec(MorselHook.set)[3])[0]
abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!#$%&*+-.^_`~:
>>> cookie = Cookie.SimpleCookie()
>>> cookie.load(ys-tab:entrance:e=abc; webpy_session_id=75eb60dcc83e2d902146af0bb7f47afe61fbd2b2)
>>> print cookie
Set-Cookie: webpy_session_id=75eb60dcc83e2d902146af0bb7f47afe61fbd2b2;
Set-Cookie: ys-tab:entrance:e=abc;
def set(self, key, val, coded_val, LegalChars=Cookie._LegalChars+:, idmap=string._idmap, translate=string.translate):
return super(MorselHook, self).set(key, val, coded_val, LegalChars, idmap, translate)
Cookie.Morsel = MorselHook
# 在你需要使用到Cookie的地方先让上面的代码执行一遍
if __name__ == __main__:
import doctest
doctest.testmod()
文章标题:让python的Cookie.py模块支持冒号做key的方法
文章链接:http://soscw.com/essay/18844.html