Django本地开发,Chrome阻止请求到

时间:2018-01-28 17:17:31

标签: django google-chrome iframe

我正在使用Django提供的本地开发服务器开发Web应用程序。我的本地网络应用程序将在远程站点的iframe中进行嵌入。但是在测试Chrome时会加载远程站点的encappsulating网页(该页面用于将我的web-app包装在iframe中,但会阻止对iframe中的本地开发服务器的请求,这使得测试无法进行。

我查看了chrome的控制台并收到以下错误:

Refused to frame 'https://localhost:8000/' because it violates the following Content Security Policy directive: "child-src 'self' https://* shopify-pos://*". Note that 'frame-src' was not explicitly set, so 'child-src' is used as a fallback.

我的问题:

1)为什么Chrome阻止请求?

2)是否因为我使用localhost而导致此错误?一旦我在具有域名的生产服务器上部署,框架在Chrome上工作正常吗?

3)无论如何,当我在本地主机上进行测试时,我是否可以绕过这个错误?

2 个答案:

答案 0 :(得分:0)

Django使用'django.middleware.clickjacking.XFrameOptionsMiddleware'进行Clickjacking保护。

要允许将网站嵌入到iframe中,只需从settings.py中删除该中间件

https://docs.djangoproject.com/en/dev/ref/clickjacking/#clickjacking-prevention

答案 1 :(得分:0)

尝试停用Chrome中的CORS保护。

chrome app可能会有所帮助。