【问题标题】:Unable to change session variable through AJAX in IE无法通过 IE 中的 AJAX 更改会话变量
【发布时间】:2010-07-20 09:13:12
【问题描述】:

在尝试使用 AJAX 更改服务器上的会话变量时,我从 IE 中得到了一些奇怪的行为。它在 FF、Chrome、Safari 和所有其他我测试过但在 IE 中无法正常工作。

我正在为匿名用户维护会话变量中的变量(整数)列表,以便当/如果他们在网站上注册时,我可以保留他们的数据。我正在使用 jQuery 和 AJAX 调用更新会话变量的 Django 函数。

IE 中的奇怪行为是在刷新(再次访问服务器)时会话仍未更新。只有当我清除浏览器缓存或查看当前 cookie 时,会话才会更新。

有什么想法吗?

【问题讨论】:

    标签: javascript ajax django internet-explorer session


    【解决方案1】:

    我遇到了同样的问题,但是对于 Pylons,我所做的是创建一个中间件,在我的响应标头中设置以下配置。

    headers["Cache-Control"] = "no-cache"
    headers["Pragma"] = "no-cache"
    headers["Expires"] = -
    

    Here 描述了它的作用。

    【讨论】:

      【解决方案2】:

      Django 已经在它的响应对象中内置了这个。

      response = HttpResponse(data, mimetype='application/javascript')
      response['Cache-Control'] = 'no-cache'
      response['Pragma'] = 'no-cache'
      response["Expires"] = ''
      return response
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2016-12-23
        • 2012-05-22
        • 2017-07-11
        • 2016-03-20
        • 1970-01-01
        • 2012-12-14
        • 2012-10-03
        相关资源
        最近更新 更多