作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在为我的项目使用数据库支持的 session 。我正在尝试使用 AngularJS 通过 AJAX 发布请求更新 session 变量的值:
app.factory('SomeFactory', ['$http', 'djangoUrl',
function ($http, djangoUrl) {
return {
getSomeDataAndUpdateSessionVar: function () {
return $http({
method: 'POST',
url: djangoUrl.reverse('some_app:list'),
data: {
param1: "param1"
}
})
},
}
}
]);
class DocumentListView(JsonRequestResponseMixin, View):
def post(self, request, *args, **kwargs):
request_data = json.loads(request.body)
data_to_be_fetched = request.session.get("data_to_be_fetched", None)
if not data_to_be_fetched:
data_to_be_fetched = fetch_data(request_data)
request.session["data_to_be_fetched"] = data_to_be_fetched
print request.session.get("data_to_be_fetched") # This will return the updated value
return HttpResponse(json.dumps(data_to_be_fetched), content_type="application/json")
data_to_be_fetched
的值仍将是
None
.奇怪的是,在第二次调用该方法后, session 变量的新值最终会被保存(第二次保存后获取时
data_to_be_fetched
将不再是
None
)。为什么会这样?它仅在 AJAX 请求期间设置 session 变量时发生。
request.session.modified = True
SESSION_SAVE_EVERY_REQUEST = True
最佳答案
问题是使用 localhost:8000 而不是 127.0.0.1:8000。因此始终使用 127.0.0.1:8000。
这对我来说是修复。
关于angularjs - 使用 AJAX 设置时未保存 Django session 变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39158852/
在我们的数据库表上,我们使用两个唯一的非聚集索引来创建跨四个字段的唯一约束。我们使用两个,因为其中一个字段 ZipCode 是一个可为空的字段。如果表中存在一条包含 ZipCode 的 null 条目
我刚刚开始学习 Rails 3 教程,以便对框架有一点熟悉,但我在生成 schema.rb 时遇到了问题。我的操作系统是 Windows 7 x64、Ruby 1.9.2、MySQL2 gem 0.2
我是一名优秀的程序员,十分优秀!