python - Django - 查看 JSON login_required

标签 python django json security http-status-codes

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

我希望它需要身份验证。

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

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

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

最佳答案

  1. 这是否是一个好的做法取决于 ajax 请求请求的资源
  2. 您不必使用 login_required 装饰器,您可以简单地检查 my_view 中的凭据。如果检查失败,则返回 401。
  3. 如果您有相当多的资源,并且想在其上构建一个用于 Ajax 目的的 REST API,请考虑使用诸如 Tastypie 之类的框架。 .

关于python - Django - 查看 JSON login_required,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13306283/

相关文章:

python - pygame Sprite 墙碰撞

python - 不知道如何在我的 pygame 中乘以外星人?

javascript - 我可以将 JS 脚本放在页脚上方而不是页脚下方 </body> 标记之前吗

python - JSON 格式的字符串到 pandas 数据帧

javascript - 迭代 Swagger YAML 文件以动态生成属性列表

python - 如何将 lambda 函数应用于 pandas 数据框中的某些行并创建新列

Python 使用 REGEX 删除文本中的标点符号

python - 从单个模板中的两个 Django 模型检索记录

django - 没有名为 'channels' 的模块

mysql - 使用正则表达式搜索并替换 Mysql 中的 JSON