在与本地不同的环境中,我设置DJ_SSL_REDIRECT = True
对于我的 Django 项目。
但现在,当我在另一个环境(例如,在 Travis CI 中)中运行时,与 REST API 端点相关的所有单元测试都失败了。
发生的情况是所有 HTTP 响应都是301
(我期待着2XX
or 4XX
在我的测试中)因为DJ_SSL_REDIRECT
设置,如文档中所述:
如果将 SECURE_SSL_REDIRECT 设置设置为 True,SecurityMiddleware 将永久 (HTTP 301) 将所有 HTTP 连接重定向到 HTTPS。
我怎样才能以简单的方式处理这个问题,保持我的单元测试的相关性?谢谢。
注意:我使用的是 Django Rest Framework 3.5
我遇到了类似的问题,并使用“安全”属性来解决它,用于测试客户端发布和获取功能,例如
response = self.client.post('/accounts/signup/', self.getvalues(), follow=True, secure=True)
希望这可以帮助!
Mikko
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)