用@login_required装饰视图会使POST请求失败

时间:2019-01-05 08:52:03

标签: python django django-views

我正在尝试处理从django外部到路径/app/process的POST请求
当我用@login_required装饰视图时,请求将视图更改为/app/process/login?next=/app/process/,并且request.POST不包含我发布的数据!

出什么问题了?

我的视图是这样的:

@login_required
def callback(request):
    state = request.POST['State']

编辑:
如果我在视图用户中登录request.user,则该用户实际上已登录!

1 个答案:

答案 0 :(得分:0)

该错误应该与会话有关。 @login_required装饰器指示应验证对视图功能的所有请求。因此,请检查您的会话对象是否保存已记录的用户数据。

尝试一下。

request.POST.get('State')

我猜这可能有用。

也请参考这个问题, Suggested Method to Forward POST Parameters Through login_required Decorator?