Django REST 框架:令牌身份验证不适用于生产

Posted

技术标签:

【中文标题】Django REST 框架:令牌身份验证不适用于生产【英文标题】:Django REST framework: Token Authentication doesn't work on production 【发布时间】:2019-07-11 22:11:44 【问题描述】:

我正在使用 Django REST 框架创建 API,并尝试将我的移动应用程序连接到 Web API。我对当地环境没有任何问题。但是,在我将 API 部署到弹性 beantalk 并尝试使用生产 url 之后,我永远无法成功。 API 始终返回 401。 我成功注册了用户的帐户,并且令牌是正确的,并且不需要身份验证的端点也可以按预期工作,但我无法在生产环境中对用户进行身份验证。 错误日志只是说401。 错误的原因可能是什么?有谁遇到过类似的问题?我不知道如何找到这种错误的原因。

【问题讨论】:

【参考方案1】:

401 通常您的授权标头没有到达应用程序。这是 beanstalk 中的一个常见问题,您可以通过将此命令添加到 config 中的 container_commands 然后执行它来解决此问题。


container_commands:
  03wsgipass:
    command: 'echo "WSGIPassAuthorization On" >> ../wsgi.conf'

希望对你有帮助

【讨论】:

以上是关于Django REST 框架:令牌身份验证不适用于生产的主要内容,如果未能解决你的问题,请参考以下文章

使用 Django Rest 框架进行 JWT 令牌身份验证

如何使用迁移框架添加 Django REST 框架身份验证令牌

如何在 django rest 框架中验证 jwt 身份验证中的令牌

在 django rest 框架中使用令牌身份验证返回更多信息

Django Rest 框架中的基于会话的与令牌身份验证

django rest 框架身份验证