为了账号安全,请及时绑定邮箱和手机立即绑定

尝试在 Jupyter Notebook 中创建 iframe 时出现错误:

尝试在 Jupyter Notebook 中创建 iframe 时出现错误:

梦里花落0921 2023-10-31 19:18:59
我收到错误:Refused to frame 'http://localhost:8888/' because an ancestor violates the following Content Security Policy directive: "frame-ancestors 'self'".当尝试从包含另一个本地 HTML 文件的 iframe 的本地 HTML 文件创建 iframe 时。例如test-outer.html:<!DOCTYPE html><html><body><iframe sandbox="allow-scripts" id="0" src="./test-inner.html" width="100" height="100"  frameborder="0"></iframe></body></html>使用 Jupyter Notebook Python 代码:from IPython.display import IFrameIFrame(src='test-outer.html', width=200, height=200)test-inner.html可以包含任何东西。test-outer.html在单独的浏览器选项卡上完美加载。问题在于将其加载到 Jupyter Notebook 中。
查看完整描述

1 回答

?
潇潇雨雨

TA贡献1833条经验 获得超4个赞

虽然这是一个老问题,但是对新求知者有所帮助。

您需要在 jupyter_notebook_config.py 中添加标头

c.NotebookApp.tornado_settings={'headers': {'Content-Security-Policy': "frame-ancestors self https://my-website-url.com/jupyter "}}

https://my-website-url.com/jupyter是您在其中加载 jupyter 笔记本的 url iFrame

这适用于 Firefox 和 Chrome。未在 Safari 中测试。


查看完整回答
反对 回复 2023-10-31
  • 1 回答
  • 0 关注
  • 160 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信