ALLOWED_HOSTS
配置在运行测试时被验证。这允许测试客户端区分内部和外部 URL。
支持多租户或根据请求的主机改变业务逻辑的项目,以及在测试中使用自定义主机名的项目,必须在 ALLOWED_HOSTS
中包含这些主机。
第一个选项是将主机添加到你的配置文件中。例如,docs.djangoproject.com
的测试套件包括以下内容:
from django.test import TestCase
class SearchFormTestCase(TestCase):
def test_empty_get(self):
response = self.client.get("/en/dev/search/", HTTP_HOST="docs.djangoproject.dev:8000")
self.assertEqual(response.status_code, 200)
同时配置文件包含项目支持的域列表:
ALLOWED_HOSTS = [
"www.djangoproject.dev",
"docs.djangoproject.dev",
...
]
另一个选项是使用 override_settings()
或 modify_settings()
将所需的主机添加到 ALLOWED_HOSTS
中。这个选项在不能打包自己配置文件的独立应用中可能比较好,或者对于域列表不是静态的项目(例如,多租户的子域)。例如,你可以为域 http://otherserver/
写一个测试,如下所示:
from django.test import TestCase, override_settings
class MultiDomainTestCase(TestCase):
@override_settings(ALLOWED_HOSTS=["otherserver"])
def test_other_domain(self):
response = self.client.get("http://otherserver/foo/bar/")
当运行测试时,禁用 ALLOWED_HOSTS
检查ALLOWED_HOSTS = ["*"]
,可以防止测试客户端在遵循重定向到外部 URL 时发出有用的错误信息。
Java Swing教程 -Java Swing JProgressBarJProgressBar用于显示任务的进度。它有一个方向,可以是水平或垂直。JProgressBar有三...
摘要: 原创出处 www.bysocket.com 「泥瓦匠BYSocket 」欢迎转载,保留摘要,谢谢!『 与其纠结,不如行动学习。Innovate ,And o...
注意版本要求:3.4.0版本以上MybatisPlusInterceptor该插件是核心插件,目前代理了Executor#query和Executor#update和S...
resultMap元素是MyBatis中最重要最强大的元素。它可以让你从90%的JDBCResultSets数据提取代码中解放出来,并在一些情形下...
映射类型当你准备一个 Hibernate 映射文件时,我们已经看到你把 Java 数据类型映射到了 RDBMS 数据格式。在映射文件中已经声明被...
一、运行环境: 1、操作系统:windows 10 x64 2、eclipse版本: Version: 2019-06 (4.12.0) Build id: 20190614-1200 3、Web服务...
让我们使用 Spring 框架开始实际的编程。在你开始使用 Spring 框架编写第一个例子之前,你必须确保已经正确地设置了 Spring 环境...
Spring框架的核心功能之一就是通过依赖注入的方式来管理Bean之间的依赖关系。 什么是依赖注入每个基于应用程序的 java 都有几个...
Spring 中基于 AOP 的 XML架构为了在本节的描述中使用 aop 命名空间标签,你需要导入 spring-aop 架构,如下所述:?xml version=...
ServletContext是一个全局的储存信息的空间,服务器开始就存在,服务器关闭才释放。为了方便大家理解,我们将ServletContext和Co...