1

我正在尝试在应用程序中上传文件。我清空浏览数据或以某种方式结束会话,然后点击上传。我从我的文件系统中选择了一个文件,我从 Django 的服务器中收到了一个禁止 (403) 错误。csrf.py 的代码被执行。

if not constant_time_compare(request_csrf_token, csrf_token):
                logger.warning('Forbidden (%s): %s',
                               REASON_BAD_TOKEN, request.path,
                    extra={
                        'status_code': 403,
                        'request': request,
                    }
                )
                return self._reject(request, REASON_BAD_TOKEN)

现在,我不想更改 Django 的代码,如何向用户呈现 401 而不是 403。我不想从服务器捕获 403 并在我的 Javascript 中将其更改为 401。还有其他解决办法吗??谢谢

4

1 回答 1

1

CSRF_FAILURE_VIEW设置允许您为 CSRF 失败编写自己的视图。您可以编写一个返回 HTTP 状态 401 的代码。

于 2012-12-15T00:26:14.023 回答