当我尝试使用 ngrok 为我的本地主机 5000 为 Twilio 创建 http 隧道时,为什么会出现错误?

Why am I getting an error when I try to use ngrok to create a http tunnel for my local host 5000 for Twilio?

我正在学习有关 TwilioNgrok 的教程:https://www.youtube.com/watch?v=knxlmCVFAZI

我已经按照视频编写了相同的脚本:

import os 
from flask import Flask, request, redirect 
from twilio.twiml.messaging_response import MessagingResponse

app = Flask(__name__)

@app.route("/sms",methods=['GET','POST'])
def sms_reply(): 
    resp = MessagingResponse() 

    resp.message("The robots are coming! Head for the hills!")

    return str(resp)


if __name__ == "__main__": 
    app.run(debug=True)

当我在我的终端中 运行 时,我收到 URL 作为响应,正如预期的那样:

 Use a production WSGI server instead.
 * Debug mode: on
 * Running on http://127.0.0.1:5000 (Press CTRL+C to quit)
 * Restarting with stat
 * Debugger is active!
 * Debugger PIN: 120-145-525

接下来,我安装 Pyngrok 包并将其内容存储在我的 CWD 中一个名为 ngrok 的文件夹中,如 ngrok 文档中所述 (https://pyngrok.readthedocs.io/en/latest/index.html)

但是当我在终端中 运行 ngrok http 5000 时,出现错误:

no such file or directory

任何帮助都会很棒!

为此您不需要 Pyngrok 包。 ngrok 是一个 stand-alone 可执行文件,尝试通过 pip 安装使用它可能会导致您的 PATH.

出现问题

我会推荐 installing ngrok by following the instructions here。针对您的操作系统有不同的安装方式。

如果您采用下载和解压缩包的方式,请确保将可执行文件放置在您的 PATH 中的目录中,例如 /usr/local/bin 在 Mac 中。

否则,您可以 运行 通过在命令行上导航到该目录并调用 ./ngrok http 5000.

将其解压缩到的文件夹中的可执行文件