即:使用Content-Security-Policy
1.安装Django CSP中间件:
pip install django-csp
2.更改项目配置:
# settings.py
MIDDLEWARE = [
...
'csp.middleware.CSPMiddleware',
...
]
CSP_DEFAULT_SRC = ("'self'",)
CSP_FRAME_ANCESTORS = ("'self'", "http://localhost:8000") # 允许指定域名嵌入
在此之前尝试了将X-Frame-Options
设置为SAMEORIGIN
,但没起效果,还尝试使用Django的@xframe_options_exempt
装饰器,也没效果,并且这两种方法博客很多,这里不做赘述~