Python CookieError:llegal键值
我多次收到这个错误消息 问题是Python CookieError:llegal键值,python,google-app-engine,cookies,Python,Google App Engine,Cookies,我多次收到这个错误消息 问题是 我使用的关键值是“tagtoo\u user\u track”。“tagtoo_{er_轨道”从何而来 这个错误并不总是发生。我在每个请求中都使用了相同的方法。如果完全错误,这个异常应该在每个请求中出现。但是,错误消息只会出现几次 这是谷歌应用程序引擎的一个缺陷吗 编辑1 另一个cookie键“tagtoo_user_track”再次出现这种情况。 看起来cookie引擎不喜欢“s” 看起来cookie字符串中存在格式错误。 无论用户是否使用相关的cookie值,
看起来cookie字符串中存在格式错误。 无论用户是否使用相关的cookie值,Python2.5cookies库都会引发异常 错误的cookie值可以通过
self.request.environ.get(“HTTP\u COOKIE”)
因此,我手动解析cookie,同时引发异常以避免此问题。我的代码中只有一个函数。您可以在错误消息中看到,我使用“tagtoo\u user\u track”关键字调用了cookies.get。
libs/handlers.py,第99行,在set\u track\u id=self.request.cookies.get(“tagtoo\u user\u track”,无)
您尝试过重新安装本地版本的GAE吗?如果您尝试从谷歌服务器而不是本地运行它会发生什么情况?我正在从谷歌服务器运行它。错误消息是从谷歌应用程序引擎的日志中抓取的。这是一个非常奇怪的错误,您可以在日志中清楚地看到您正在调用的密钥,并且它与当前的密钥不同出错的那一个。可能是转换为unicode或其他什么的问题?我可能会将此作为错误发布在Google的论坛/支持上。程序是否从文件加载cookie?文件中是否有损坏的键值,而不是您的请求?我问这个问题是因为您的第二个错误是关于一个键(TagTo\u用户){ion
)这与在回溯过程中被请求的密钥非常不同(tagtoo\u user\u track
)。找出webob
在执行Cookie.load(source)
时加载的内容,我打赌您会找到问题的根本原因。
Dump Error:
Traceback (most recent call last):
File "/base/data/home/apps/s~tagtoo-ec/1.361220954515344675/libs/handlers.py", line 69, in get
self.beforeFilter()
File "/base/data/home/apps/s~tagtoo-ec/1.361220954515344675/libs/handlers.py", line 51, in beforeFilter
self.set_track()
File "/base/data/home/apps/s~tagtoo-ec/1.361220954515344675/libs/handlers.py", line 99, in set_track
track_id = self.request.cookies.get("tagtoo_user_track", None)
File "/base/python_runtime/python_lib/versions/1/webob/__init__.py", line 985, in cookies
vars = self.str_cookies
File "/base/python_runtime/python_lib/versions/1/webob/__init__.py", line 973, in str_cookies
cookies.load(source)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 619, in load
self.__ParseString(rawdata)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 650, in __ParseString
self.__set(K, rval, cval)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 572, in __set
M.set(key, real_value, coded_value)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 451, in set
raise CookieError("Illegal key value: %s" % key)
CookieError: Illegal key value: tagtoo_u{er_track
Traceback (most recent call last):
File "/base/data/home/apps/s~tagtoo-ec/1.361220954515344675/libs/handlers.py", line 69, in get
self.beforeFilter()
File "/base/data/home/apps/s~tagtoo-ec/1.361220954515344675/libs/handlers.py", line 51, in beforeFilter
self.set_track()
File "/base/data/home/apps/s~tagtoo-ec/1.361220954515344675/libs/handlers.py", line 99, in set_track
track_id = self.request.cookies.get("tagtoo_user_track", None)
File "/base/python_runtime/python_lib/versions/1/webob/__init__.py", line 985, in cookies
vars = self.str_cookies
File "/base/python_runtime/python_lib/versions/1/webob/__init__.py", line 973, in str_cookies
cookies.load(source)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 619, in load
self.__ParseString(rawdata)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 650, in __ParseString
self.__set(K, rval, cval)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 572, in __set
M.set(key, real_value, coded_value)
File "/base/python_runtime/python_dist/lib/python2.5/Cookie.py", line 451, in set
raise CookieError("Illegal key value: %s" % key)
CookieError: Illegal key value: tagtoo_user_ses{ion