如何使用JavaScript或HTTP SetCookie管理cookie?

2024-10-05 11:40:15 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在GAE环境中创建一个web应用程序。它大量使用AJAX/JSON来发送/接收数据,以及所有这些。我不太担心禁用JS的浏览器和过时的浏览器,因为这是我的个人项目,我正在努力使它简单,而不是代码臃肿。所以,我在项目中大量使用JavaScript。请告诉我如何更好地管理cookies和会话。我有两个变体-尽可能使用httpsetcookie,否则使用JavaScript。第二个是相反的-尽可能使用JavaScript。两个变种现在都可以工作,但我想让它正确的方式。在JavaScript场景中,当需要设置cookie时,我通过AJAX获取一些数据,并使用jQuery插件将这些键设置为cookies,反之亦然,使用JS读取cookies并通过AJAX发送它们。这两种方法的利弊如何?谢谢!在


Tags: 项目代码webjson应用程序环境js浏览器
3条回答

Cookies总是与HTTP头绑定在一起,因此通过JavaScript读取并通过AJAX发送到服务器没有任何“改进”。在

例如,字体大小或网站语言等与显示相关的设置通常只与客户端相关,所以我只使用JavaScript来设置和检索这些cookie。在

会话ID之类的东西无论如何都需要服务器端的工作,因此通过httpsetcookie维护cookie似乎是最直接的方法。在

你应该把你的饼干放在最方便的地方。
这可能意味着有些cookie来自服务器,有些来自客户端。在

但是,请注意,出于安全原因,高风险cookie(如登录令牌)应仅为HTTP,以便无法从Javascript访问它们。在

(不用说,它们应该是SSL)

只有当您设置了SSL和-i选项时,才可以使用javascript。在

启用这些选项可以避免应用程序中的许多安全漏洞(请注意,设置http only标志只会阻止javascript读取cookie—它仍然会在Ajax请求中显示)。在

相关问题 更多 >

    热门问题