【问题标题】:How to access localhost from another computer on same network? [duplicate]如何从同一网络上的另一台计算机访问 localhost? [复制]
【发布时间】:2020-03-20 09:51:05
【问题描述】:

我已经编写了一些烧瓶 api 并在 http://localhost:5000/ 上运行。 我想从连接在同一网络中的其他计算机上测试这些 api。 我正在使用 Windows 10。

我尝试过的:

  1. 我做了 ipconfig/all 并得到了 ipv4 地址。无线 LAN 适配器 Wi-Fi:-> IPv4 地址:XX.XX.XXX.XXX(首选)。

  2. 运行 XX.XX.XXX.XXX:5000 ,但收到“无法访问此站点”。

【问题讨论】:

  • 你可以做app.run("0.0.0.0", port=5000),从另一台机器,去服务器机器ip:5000访问它。
  • @HarshalParekh 我如何获取服务器机器 ip?
  • ...服务器机器是你的机器
  • 无线 LAN 适配器 Wi-Fi:-> IPv4 地址:XX.XX.XXX.XXX(首选)。?是那个
  • @HarshalParekh "sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) could not connect to server: Cannot assign requested address" 通过将 localhost 更改为 0.0.0.0 得到此错误

标签: python flask networking flask-restful


【解决方案1】:

在你的机器上打开 5000 端口。请按照以下步骤操作:

  1. 导航到控制面板、系统和安全以及 Windows 防火墙。
  2. 选择高级设置并突出显示左侧窗格中的入站规则。
  3. 右键单击入站规则并选择新建规则。
  4. 添加您需要打开的端口,然后单击下一步(在您的情况下为 5000)。
  5. 将协议(TCP 或 UDP)和端口号添加到下一个窗口中,然后单击下一步。
  6. 在下一个窗口中选择允许连接,然后点击下一步。
  7. 选择您认为合适的网络类型,然后单击下一步。
  8. 将规则命名为有意义的名称,然后单击完成。

然后尝试通过<your ip>:5000访问

示例代码如下:

import flask

app = flask.Flask(__name__)
app.config["DEBUG"] = True


@app.route('/', methods=['GET'])
def home():
    return "<h1>Test Data</p>"

app.run(host='0.0.0.0')

并通过 cmd 以python api.py 运行您的应用程序,其中api.py 是文件名

【讨论】:

  • 我按照所有步骤操作,但仍然拒绝连接。
  • 从您的机器上尝试 :5000 以确保应用程序正在运行
  • 我可以访问 localhost:5000 但使用这个 :5000 我不能。
  • 如何获取我的ip? m 使用 ip 形式:无线 LAN 适配器 Wi-Fi:-> IPv4 地址:XX.XX.XXX.XXX(首选)。
  • 转到命令提示符,键入“ipconfig”
【解决方案2】:

要从另一台机器访问 Flask 应用程序,您需要将应用程序绑定到 0.0.0.0 而不是 localhost (127.0.0.1)。后者不会路由到另一台机器。

如果您通过 python 运行应用程序,请使用run(host='0.0.0.0')

如果您正在运行应用程序 flask run,请添加 --host=0.0.0.0

【讨论】:

  • "sqlalchemy.exc.OperationalError: (psycopg2.OperationalError) could not connect to server: Cannot assign requested address" 通过将 localhost 更改为 0.0.0.0 得到此错误
【解决方案3】:

暂时将其公开可能更容易:https://ngrok.com/

但是在同一台机器上进行本地测试会更容易。

【讨论】:

    【解决方案4】:

    您只需在浏览器中输入指定端口号的主机 IP 地址即可,因为两台计算机都在同一个网络中。

    【讨论】:

      猜你喜欢
      • 2013-10-29
      • 2012-05-22
      • 1970-01-01
      • 2020-08-24
      • 2020-07-06
      • 2012-03-29
      • 2015-02-10
      • 2016-09-15
      • 2019-10-05
      相关资源
      最近更新 更多