django - 如何在 Django 中配置 X-Frame-Options 以允许 iframe 嵌入一个 View ?

标签 django iframe http-headers x-frame-options

我正在尝试使 django 允许将一个特定 View 嵌入到外部站点上,最好没有站点限制。

在我的 views.py 文件中,我添加了以下代码,其中 View futurebig 是我想要嵌入的 View :

from django.views.decorators.clickjacking import xframe_options_sameorigin
...
@xframe_options_sameorigin
def futurebig(request):
    ...
    return render_to_response('templates/iframe/future_clock_big.html', context_dict, context)

据我了解,这没有帮助,因为它只能嵌入同一服务器中。

如何设置该特定 View 的标题以使其能够嵌入到任何网站中?

郑重声明,我只是一名前端开发人员,开发该网站的后端开发人员不再与我合作,并且拒绝记录他的代码,因此,如果有人可以帮助我并仔细解释我在何处以及进行了哪些修改应该这样做,我会非常感激。

谢谢。

据我所知,Django版本是1.6

最佳答案

您正在朝着正确的方向前进,但实现这一目标所需的确切装饰器是“xframe_options_exempt”。

from django.http import HttpResponse
from django.views.decorators.clickjacking import xframe_options_exempt

@xframe_options_exempt
def ok_to_load_in_a_frame(request):
    return HttpResponse("This page is safe to load in a frame on any site.")

PS:不再支持 DJango 1.6。现在是升级的好时机。

关于django - 如何在 Django 中配置 X-Frame-Options 以允许 iframe 嵌入一个 View ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33267383/

相关文章:

python - 提高 Django 中的 INSERT 性能以处理大量大量数据的记录

android - 如何在调用任何api时在android中将参数作为json发布

ruby - 如何使用修改后的 header 制作 HTTP GET?

python - Django 表单在控制台中验证,但为什么不在浏览器中验证?

django - 服务器上的数据更改后如何在浏览器上自动刷新管理页面?

javascript - 仅向来自特定引荐来源网址的访问者显示页面中的 iframe

html - 在没有iframe的情况下在Wordpress中包含jsp页面

javascript - 如何防止网页知道它已加载到 iframe 中?

http-headers - 更改 IIS/ASP.NET 发送的 header 。副作用?

django-rest-auth 重置密码 uid 和 token