Jupyter创建笔记本失败:FORBIDDEN

Mau*_*ile 17 jupyter-notebook

我刚刚将Jupyter升级到版本4.3.1虽然我可以打开以前创建的ipynb文件,但我无法创建新的.

当我尝试创建一个新的笔记本文件时,我得到一个弹出窗口说:
创建笔记本失败
创建新笔记本时发生错误
Forbidden

在终端我注意到这个输出:

[W 12:53:23.375 NotebookApp] 403 POST /api/contents (::1): '_xsrf' argument missing from POST
[W 12:53:23.383 NotebookApp] 403 POST /api/contents (::1) 8.92ms referer=http://localhost:8888/tree?token=e7fbbb58516dc1359fcc26a1079093166a1f713ee5b94ccd
Run Code Online (Sandbox Code Playgroud)

我使用Jupyter与Python 3.5.2和IPython 5.1.0

pab*_*ora 9

确认问题的另一种方法是在另一个浏览器中打开Jupyter会话,您可能会被重定向到如下屏幕:

在此处输入图片说明

如果您打开一个新的控制台并键入

jupyter notebook list
Run Code Online (Sandbox Code Playgroud)

您会看到当前的笔记本,该URL将包含一个令牌。在新标签页中打开该标签,问题已解决。

输出命令应如下所示:

Currently running servers:
http://localhost:8888/?token=cbad1a6ce77ae284725a5e43a7db48f2e9bf3b6458e577bb :: <path to notebook>
Run Code Online (Sandbox Code Playgroud)

  • 如果您打开的一本书突然停止允许保存检查点,则这适用。貌似密码超时了?打开新窗口并在新窗口中输入密码将重新启用打开选项卡上的保存功能。 (3认同)

Osk*_*rad 8

我必须在浏览器中启用cookie(我故意禁用它).然后"禁止"错误消失了,现在一切正常.

普遍接受的防止XSRF的解决方案是为每个用户提供不可预测的值,并将该值作为附加参数包含在您网站上的每个表单提交中.

来自:http://tornado.readthedocs.io/en/latest/guide/security.html#cross-site-request-forgery-protection


Fre*_*man 5

Jupyter 会阻止非本地请求。要从外部地址访问 Jupyter,我们可以使用以下参数执行它:

jupyter notebook --NotebookApp.allow_origin=* --NotebookApp.allow_remote_access=1
Run Code Online (Sandbox Code Playgroud)