Django - 查看JSON login_required

时间:2012-11-09 10:27:27

标签: python django json security http-status-codes

我有一个使用ajax调用的视图并返回JSON。

我希望它要求身份验证。

@login_required
def my_view(request):
    data = some_data
    return HttpResponse(json.dumps(data), mimetype='application/json')

理想情况下,如果我未经过身份验证,则此视图应返回HTTP状态 401 Unauthorized 或类似内容,因此我的javascript可以正确解释响应。

要求对Ajax请求进行身份验证是一种很好的做法吗? 如果是,我如何从@login_required装饰器获取此HTTP状态?

1 个答案:

答案 0 :(得分:1)

  1. 是否是一种好的做法取决于ajax请求所请求的资源
  2. 您不必使用login_required装饰器,您只需检查my_view内的凭据即可。如果检查失败,请返回401。
  3. 如果您有相当多的资源,并且您希望在Ajax上构建REST API,请考虑使用Tastypie等框架。
相关问题