我有一个在前端使用ExtJS,在服务器上使用TurboGears的应用程序。我现在开始添加cookie来使用CookieProvider状态管理器来处理自定义前端。这很酷,但是每个调用都会传递cookie,这些cookie是相当大的。我对演出的成功很担心。
有什么方法可以阻止某些cookie在调用服务器时被发送?
发布于 2010-11-29 02:41:58
下面是我最后实现的内容:所有的自定义都存储在数据库中。当屏幕被导航到时,我读取当前用户的屏幕自定义,并使用它在init_component例程中初始化一个简单的基于内存的状态提供程序。状态提供程序侦听适当的事件并更新内存中的状态.UI有一个带有和保存/重置选项的首选项菜单。保存选项将内存状态保存到服务器。重置将从数据库中删除状态,并使用默认设置重新构建屏幕。这似乎很管用。
FYI:我发现的其他问题:
我实现了每个屏幕每个有状态控制的一个状态设置,通常只有一个网格,但是一个屏幕有一个组合体加上一个网格。也许最好把它们捆起来,但时间不够.
发布于 2010-07-10 18:07:05
如果您知道您的用户正在使用现代浏览器,则可以使用HTML 5本地存储而不是cookie。
这正是它的意义所在--在客户机上存储数据,比如本地定制。
它将您从cookie的问题中解脱出来,比如被发送到服务器,以及更小的大小限制。
发布于 2010-07-09 16:58:57
为了使基于ExtJS的应用程序在不启用cookies的情况下工作(这意味着来自用JS编写并使用AJAX-请求与基于Java的服务器通信的客户端的每个请求都将创建一个新的会话ID,因此不能由服务器分配给任何特定的会话),我想出了一个非常简单的方法来覆盖AJAX-ExtJS方法,并在每个请求中添加会话-ID解决了这个问题。我从另一个线程中得到了这个想法,在这个线程中,我们向您展示了如何覆盖Ext.Ajax以在每个调用中添加一个特定的参数,并且正在使用这种方式向每个URL-参数添加带有“;jsessionid=”的会话ID。
https://stackoverflow.com/questions/3214803
复制相似问题