Django 会话无法在远程服务器上工作
Django Sessions not Working on remote server
我正在尝试在我的 Django 应用程序中使用会话变量
view.py
def get(self, request):
room_name = request.session.get('room_name')
context = app.get_context(room_name)
context['room_name_create'] = room_name
context['room_name_check'] = request.session.get('room_name')
return render(request, self.template, context)
js
console.log('a', context.room_name_create)
console.log('b', context.room_name_check)
这在我的本地服务器上完美运行。
在远程服务器上 context.room_name_create 显示一个值,但是 context.room_name_check 显示为 null 在浏览器中。
这只是一个小应用程序,我已将所有源文件复制到远程服务器,因此所有源文件都是相同的。我已经在不同的浏览器上测试过了
我有 运行 shell 中的 Django tutorial 中的示例,并且效果很好
任何人都可以建议我可以检查什么来解决这个问题吗?
要在 Django 中使用会话,通常需要做两件事:
在会话中设置数据
您的情况:room_name = request.session.set('room_name') = some_value
或
room_name = request.session['room_name'] = some_value
从会话中获取数据
你的情况:room_name = request.session.get('room_name')
注意:您需要在会话中设置数据,然后再尝试检索它。
我正在尝试在我的 Django 应用程序中使用会话变量
view.py
def get(self, request):
room_name = request.session.get('room_name')
context = app.get_context(room_name)
context['room_name_create'] = room_name
context['room_name_check'] = request.session.get('room_name')
return render(request, self.template, context)
js
console.log('a', context.room_name_create)
console.log('b', context.room_name_check)
这在我的本地服务器上完美运行。
在远程服务器上 context.room_name_create 显示一个值,但是 context.room_name_check 显示为 null 在浏览器中。
这只是一个小应用程序,我已将所有源文件复制到远程服务器,因此所有源文件都是相同的。我已经在不同的浏览器上测试过了
我有 运行 shell 中的 Django tutorial 中的示例,并且效果很好
任何人都可以建议我可以检查什么来解决这个问题吗?
要在 Django 中使用会话,通常需要做两件事:
在会话中设置数据
您的情况:room_name = request.session.set('room_name') = some_value
或
room_name = request.session['room_name'] = some_value
从会话中获取数据
你的情况:room_name = request.session.get('room_name')
注意:您需要在会话中设置数据,然后再尝试检索它。