带有选项的 python 和 ngrok 给了我一个错误
Posted
技术标签:
【中文标题】带有选项的 python 和 ngrok 给了我一个错误【英文标题】:python and ngrok with options gives me an error 【发布时间】:2020-01-31 22:47:21 【问题描述】:我试图用options
运行ngrok
我试过了
from pyngrok import ngrok
ngrokPublicUrl = ngrok.connect(5000, bind_tls= True)
和
ngrokPublicUrl = ngrok.connect(remote_addr=5000, bind_tls= True)
对于选项,我在这里使用了文档 --> https://ngrok.com/docs#tunnel-definitions。我正在尝试获取 https 地址而不是 http。看起来options
用法不正确?
但我收到此错误
TypeError: connect() got an unexpected keyword argument 'remote_addr'
或
TypeError: connect() got an unexpected keyword argument 'bind_tls'
【问题讨论】:
来自 pyngrok 文档:“connect() 方法还可以采用 options 参数,它允许我们传递 ngrok 支持的其他选项。”所以像ngrok.connect(options='remote_addr': 5000, 'bind_tls': True)
我认为
Thx 我正在寻找已经尝试过的 python 用法 --> ngrok.connect('remote_addr':5000) 或 ngrok.connect('remote_addr'=5000) 问题是用法我该如何使用它使用 python 或语法
【参考方案1】:
更新
使用pyngrok>=5
,options
已解压缩为kwargs
,这意味着提问者的原始语法现在可以正常工作,但还应注意此更新connect()
现在返回NgrokTunnel
而不是像以前那样将public_url
改成str
。
原始答案(pyngrok<=4.1
)
我是pyngrok
的开发者。正确的 Python sn-p 已在上面的评论中给出,我也会在这里发布,以便将其标记为已回答。
您不能将此参数直接传递给connect()
,就像您尝试做的那样,您需要将其作为options
字典传递给connect()(它将被解包到您文档中的隧道定义中)已链接——请参阅 API 文档 here)。
from pyngrok import ngrok
options =
"remote_addr": 5000,
"bind_tls": True
ngrokPublicUrl = ngrok.connect(options=options)
也许options
会更直观地在connect()
中解压缩为kwargs
?我会记下这一点,将其视为未来的改进,但现在您需要按照上述方式进行操作。
【讨论】:
以上是关于带有选项的 python 和 ngrok 给了我一个错误的主要内容,如果未能解决你的问题,请参考以下文章
现实给了我一巴掌 既不道歉,也不说话 用最好的年华,换最深刻的教训
postgres给了我一组数字,例如“1,2,3,6,7,8,11,12,15,18,19,20” 获得每组连续数字的最大值