散景服务器 - 拒绝连接,因为主机不在白名单中
bokeh server- rejected connection because host is not in whitelist
我正在尝试 运行 在我的本地计算机上创建一个简单的散景服务器脚本:
#app.py
from bokeh.io import curdoc
from bokeh.models import ColumnDataSource
from bokeh.plotting import figure
from random import randrange
#create figure
f=figure(x_range=(0,11),y_range=(0,11))
#create columndatasource
source=ColumnDataSource(data=dict(x=[],y=[]))
#create glyphs
f.circle(x='x',y='y',size=8,fill_color='olive',line_color='yellow',source=source)
#create periodic function
def update():
new_data=dict(x=[randrange(1,10)],y=[randrange(1,10)])
source.stream(new_data,rollover=15)
print(source.data)
#add figure to curdoc and configure callback
curdoc().add_root(f)
curdoc().add_periodic_callback(update,1000)`
在命令行上我尝试了各种组合:
bokeh serve app.py
bokeh serve app.py --port 5100
bokeh serve app.py --host *
bokeh serve app.py --allow-websocket-origin=127.0.0.1:80
他们都return一条消息说主机被拒绝,因为它不在白名单上。我 运行宁 windows。出了什么问题?
好笑的是,我居然在午饭前就开始工作了。用食物奖励自己后,它就停止工作了,从那以后我就再也没有得到过它。我相信工作组合使用 --port
和 --allow-websocket
答案是版本控制。 Tornado 4.4.2 有效但 4.5.3 无效
要事第一,如果你只是 运行
bokeh serve --show app.py
然后 Bokeh 会自动将浏览器 window 打开到正确的 URL。默认的 URL 是
http://localhost:5006/app
注意是 localhost
而不是 127.0.0.1
其他一些注意事项:
--allow-websocket-origin
仅当您将 Bokeh 应用程序嵌入到具有自己地址的不同独立网站时才需要。不需要只在本地查看。
(令人困惑的)--host
参数已弃用并删除(也许您有旧版本?)但也不需要在本地查看
--address
告诉 Bokeh 服务器要监听哪些网络地址,本地通常不需要。
--port
告诉 Bokeh 服务器监听哪个网络端口而不是默认端口 5006。例如
bokeh serve --port 8080 --show app.py
将导致可在此处访问应用程序:
http://localhost:8080/app
如果这没有帮助,则需要更多信息。具体来说,您未提供的 exact 错误消息,或者您实际尝试导航到的内容 URL 的一些指示(因为这是问题的一半)。
我正在尝试 运行 在我的本地计算机上创建一个简单的散景服务器脚本:
#app.py
from bokeh.io import curdoc
from bokeh.models import ColumnDataSource
from bokeh.plotting import figure
from random import randrange
#create figure
f=figure(x_range=(0,11),y_range=(0,11))
#create columndatasource
source=ColumnDataSource(data=dict(x=[],y=[]))
#create glyphs
f.circle(x='x',y='y',size=8,fill_color='olive',line_color='yellow',source=source)
#create periodic function
def update():
new_data=dict(x=[randrange(1,10)],y=[randrange(1,10)])
source.stream(new_data,rollover=15)
print(source.data)
#add figure to curdoc and configure callback
curdoc().add_root(f)
curdoc().add_periodic_callback(update,1000)`
在命令行上我尝试了各种组合:
bokeh serve app.py
bokeh serve app.py --port 5100
bokeh serve app.py --host *
bokeh serve app.py --allow-websocket-origin=127.0.0.1:80
他们都return一条消息说主机被拒绝,因为它不在白名单上。我 运行宁 windows。出了什么问题?
好笑的是,我居然在午饭前就开始工作了。用食物奖励自己后,它就停止工作了,从那以后我就再也没有得到过它。我相信工作组合使用 --port
和 --allow-websocket
答案是版本控制。 Tornado 4.4.2 有效但 4.5.3 无效
要事第一,如果你只是 运行
bokeh serve --show app.py
然后 Bokeh 会自动将浏览器 window 打开到正确的 URL。默认的 URL 是
http://localhost:5006/app
注意是 localhost
而不是 127.0.0.1
其他一些注意事项:
--allow-websocket-origin
仅当您将 Bokeh 应用程序嵌入到具有自己地址的不同独立网站时才需要。不需要只在本地查看。(令人困惑的)
--host
参数已弃用并删除(也许您有旧版本?)但也不需要在本地查看--address
告诉 Bokeh 服务器要监听哪些网络地址,本地通常不需要。--port
告诉 Bokeh 服务器监听哪个网络端口而不是默认端口 5006。例如bokeh serve --port 8080 --show app.py
将导致可在此处访问应用程序:
http://localhost:8080/app
如果这没有帮助,则需要更多信息。具体来说,您未提供的 exact 错误消息,或者您实际尝试导航到的内容 URL 的一些指示(因为这是问题的一半)。