我在使用python模块cherrypy检索客户端在服务器上发送的cookie时遇到了一些问题。
在网络浏览器中,我可以通过访问资源 - >在Chrome的Web控制台中看到Cookie。 Cookies - >本地主机。然后我有3个具有以下值的cookie。
在服务器端,我从Eclipse调试器获得以下信息:
我的问题是为什么不把foo和release_id显示在键中?有什么我做错了吗?
注意:
cookies = cherrypy.request.cookie
用于设置Cookie的Javascript代码:
$(function() {
// Functions from W3C Schools: http://www.w3schools.com/js/js_cookies.asp
function setCookie(cname, cvalue, exdays) {
var d = new Date();
d.setTime(d.getTime() + (exdays*24*60*60*1000));
var expires = "expires="+d.toUTCString() + ";";
var path = "path=/;" // Accessible to all.
document.cookie = cname + "=" + cvalue + "; " + expires + path;
}
function getCookie(cname) {
var name = cname + "=";
var ca = document.cookie.split(';');
for(var i=0; i<ca.length; i++) {
var c = ca[i];
while (c.charAt(0)==' ') c = c.substring(1);
if (c.indexOf(name) != -1) return c.substring(name.length, c.length);
}
return "";
}
setCookie("foo", "bar", 1 );
setCookie("release_id", "2", 1 );
});
答案 0 :(得分:0)
您确定cookies.keys
不是cherrypy.response.cookie
吗?
cherrypy.response.cookie
!= cherrypy.request.cookie
从调试器打印屏幕的角度来看,此时cherrypy.response.cookie
只有session_id
键似乎没问题。