首页 > 解决方案 > 如何更改 python flask API 的 localhost url

问题描述

我的笔记本电脑上运行了一个 python flask api。它以localhosturl 开头。基本网址如下:

http://localhost:5555/

我正在尝试将此 api 与一个c++项目集成,但在端口号方面遇到的问题很少。是否可以删除端口号并使基本网址如下所示

http://localhost/

下面是代码:

if __name__ == '__main__':
    import os

    HOST = os.environ.get('SERVER_HOST', 'localhost')  
    try:
        PORT = int(os.environ.get('SERVER_PORT', '5555'))
    except ValueError:
        PORT = 5555

    app.run(HOST, PORT)

如果我这样做app.run(HOST),它仍然以 port 开头5000。是否无法从 url 中删除端口号。请帮忙。谢谢

标签: pythonapiflask

解决方案


当您连接到给定协议的默认端口时,浏览器不会显示端口号(即:80 用于 http,:443 用于 https)。在端口 80 上运行 Flask 服务器是可行的,但取决于您运行的操作系统。为特权软件保留“低”端口号(低于 1024 的端口号)是许多操作系统的惯例,因此您需要安排以特权方式运行 Flask。

但是您注意到问题是与 C++ 项目集成,这暗示您可能有不同的问题。如果您遇到的问题是您无法从 C++ 向本地 Flask 服务器localhost:5000发出请求,那么问题可能是 C++ 程序构造的 HTTP 请求必须包含标头Host: localhost:5000


推荐阅读