Django LiveServerTestCase:在 test-time 禁用 SSL
Django LiveServerTestCase: disable SSL at test-time
我有一个带有 "require_ssl" 装饰器(来自 this snippet)的 CBV,它将客户端重定向到 HTTPS 下的相同 url 路径。
我试图在 test-time 禁用 SSL,而 LiveServerTestCase 是 运行(因为它默认为 non-secured)。
这需要基于 test-time 的服务器配置,而不是客户端注入的 HTTP header(因为这可以在生产中注入)。我只是找不到任何标志来表示 Django 测试服务器是 运行.
我能够通过 @override_setting 装饰器(从 Django 1.4 开始就存在)解决这个问题。
我的 'require_ssl' 装饰器现在可以检查是否存在测试时间设置:
getattr(settings, 'UNDER_TEST', False)
我有一个带有 "require_ssl" 装饰器(来自 this snippet)的 CBV,它将客户端重定向到 HTTPS 下的相同 url 路径。
我试图在 test-time 禁用 SSL,而 LiveServerTestCase 是 运行(因为它默认为 non-secured)。
这需要基于 test-time 的服务器配置,而不是客户端注入的 HTTP header(因为这可以在生产中注入)。我只是找不到任何标志来表示 Django 测试服务器是 运行.
我能够通过 @override_setting 装饰器(从 Django 1.4 开始就存在)解决这个问题。
我的 'require_ssl' 装饰器现在可以检查是否存在测试时间设置:
getattr(settings, 'UNDER_TEST', False)