【问题标题】:Insert http request header for debugging插入http请求头进行调试
【发布时间】:2014-07-30 15:44:56
【问题描述】:

我正在使用 python manage.py runserver 0.0.0.0:8000 在本地环境中测试 Django 应用程序

当应用程序在生产环境中运行时,客户端有一个 Web 代理,可以针对 AD 验证您并插入一个 http 标头。但是对于调试,我无法通过该代理运行。为了测试,我一直在使用 Firefox 插件“Modify Headers”来插入此标头的一个版本,但现在我遇到了一个错误,需要我在 IE 中插入该标头。我宁愿不修改源代码,因为它可能最终会被签入,所以我正在寻找可以放入应用程序 settings.py 或脚本的东西,或者我可以在测试之间运行的东西服务器和客户端(但不需要安装任何东西,因为这里所有东西都被锁定了)。

【问题讨论】:

  • 为什么不创建一个名为 test_settings 的新设置文件?所以它只会在你运行测试时使用......你也可以用装饰器覆盖你的设置
  • 我不介意更改 settings.py 文件,我只是不确定如何更改 settings.py 文件中的标题。

标签: django httprequest


【解决方案1】:

假设这是你的 settings.py:

VARIABLE_THAT_YOU_NEED = "VALUE A" 

在您的设置文件的末尾,您只需添加这一行:

if 'test' in sys.argv:
try:
    from test_settings import *
except ImportError:
    pass

现在您创建一个名为“test_settings.py”的新文件,在此文件中,您只覆盖测试所需的内容,在您的情况下:

VARIABLE_THAT_YOU_NEED = "VALUE B" 

所以,当你运行你的服务器时,你将正常拥有你的变量,当运行测试时,这个变量将被替换!

【讨论】:

  • 谁会修改您的 HTTPRequest 标头中的内容?
  • 我误会了,对不起。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2019-08-24
  • 1970-01-01
  • 2018-11-29
  • 2017-10-07
  • 2015-07-13
  • 1970-01-01
  • 2021-12-19
相关资源
最近更新 更多