python - 如何更改 python flask API 的 localhost url
问题描述
我的笔记本电脑上运行了一个 python flask api。它以localhost
url 开头。基本网址如下:
我正在尝试将此 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 中删除端口号。请帮忙。谢谢
解决方案
当您连接到给定协议的默认端口时,浏览器不会显示端口号(即:80 用于 http,:443 用于 https)。在端口 80 上运行 Flask 服务器是可行的,但取决于您运行的操作系统。为特权软件保留“低”端口号(低于 1024 的端口号)是许多操作系统的惯例,因此您需要安排以特权方式运行 Flask。
但是您注意到问题是与 C++ 项目集成,这暗示您可能有不同的问题。如果您遇到的问题是您无法从 C++ 向本地 Flask 服务器localhost:5000
发出请求,那么问题可能是 C++ 程序构造的 HTTP 请求必须包含标头Host: localhost:5000
。
推荐阅读
- c++ - How to check that two arbitrary memory ranges are not overlapped in c/c++
- php - 由于 PHP、Apache 版本导致的 PHP 错误?
- java - 使用 Java 客户端在 Google 数据存储上的 CompositeFilter 的 CompositeFilter
- unity3d - Unity-在滚动背景上向左移动对象
- javascript - Chart.js - 仅在重新加载画布后才呈现字体
- c - XCB xcb_window_t VS xcb_drawable_t
- r - 在数据帧上使用素数函数运行应用
- oracle - 用触发器阻止数据库写入
- linux - 如何按点获取有向图
- ssh - 无法使用 ssh - 公钥问题