HTTP 标头
Headers
Headers
简介
Masonite 允许您轻松地向应用程序添加头部信息。 Masonite 添加了一些合理的默认值,但您可以根据需要对其进行修改。
配置
您需要做的就是将中间件添加到config / middleware.py
文件中的HTTP_MIDDLEWARE
常量中:
from masonite.middleware import SecureHeadersMiddleware
HTTP_MIDDLEWARE = [
...
SecureHeadersMiddleware,
]
这将为您的服务器添加以下默认头部信息:
'Strict-Transport-Security': 'max-age=63072000; includeSubdomains'
'X-Frame-Options': 'SAMEORIGIN'
'X-XSS-Protection': '1; mode=block'
'X-Content-Type-Options': 'nosniff'
'Referrer-Policy': 'no-referrer, strict-origin-when-cross-origin'
'Cache-control': 'no-cache, no-store, must-revalidate'
'Pragma': 'no-cache'
覆盖标题
如果要更改或添加任何头部信息,只需在config / middleware.py
文件中指定它们,该中间件将自动选择它们。例如,您可以像这样更改X-Frame-Options
标头:
config/middleware.py
SECURE_HEADERS = {
'X-Frame-Options' : 'deny'
}
然后将您的头部信息更改为:
'Strict-Transport-Security': 'max-age=63072000; includeSubdomains'
'X-Frame-Options': 'deny'
'X-XSS-Protection': '1; mode=block'
'X-Content-Type-Options': 'nosniff'
'Referrer-Policy': 'no-referrer, strict-origin-when-cross-origin'
'Cache-control': 'no-cache, no-store, must-revalidate'
'Pragma': 'no-cache'
注意我们新头部信息中的更改。
CORS
您也可以选择将 CORS 用于您的应用程序以获得高级安全措施。使用 CORS 与上面的头部信息非常相似。
该中间件必须位于
HTTP_MIDDLEWARE
堆栈的 TOP 处,以便请求不会在其他中间件中被拒绝。
若要开始,只需将CorsProvider
类导入您的config / providers.py
文件并将其添加到您的PROVIDERS
列表中:
from masonite.providers import CorsProvider
...
PROVIDERS = [
AppProvider,
CorsProvider,
...,
]
然后在您的config / middleware.py
文件中,您可以将 CORS 标头作为字典。下面是一个合理的默认值列表:
from masonite.middleware import CorsMiddleware
...
HTTP_MIDDLEWARE = [
...,
]
ROUTE_MIDDLEWARE = [
...,
]
...
CORS = {
'Access-Control-Allow-Origin': "*",
"Access-Control-Allow-Methods": "DELETE, GET, HEAD, OPTIONS, PATCH, POST, PUT",
"Access-Control-Allow-Headers": "Content-Type, Accept, X-Requested-With",
"Access-Control-Max-Age": "3600",
"Access-Control-Allow-Credentials": "true"
}
现在,如果您转到浏览器,您将看到这些头部信息作为服务器的响应发送。
本译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。