Flask API访问特定/text接口返回404 URL未找到错误如何解决
问题根源
你的代码存在执行顺序错误:if __name__ == '__main__' 包裹的 app.run(port=8000) 是阻塞调用,启动Flask服务后会一直占用当前进程,写在这行代码之后的/text路由注册逻辑永远不会被执行,Flask自然没有识别到这个接口,所以返回404。
修复方法
将所有路由定义代码全部移到app.run()之前,调整后的代码如下:
from flask import Flask import db app = Flask(__name__) @app.route('/home') def home(): return "flask mongodb atlas!" @app.route('/text') def text(): return "This is a text" if __name__ == '__main__': app.run(port=8000)
调整完成后重启服务,再次访问/text接口即可正常获取返回内容。
额外优化建议
开发阶段可以在app.run中开启debug模式,修改代码后服务会自动重启,避免手动重启漏加载代码的问题:
app.run(port=8000, debug=True)
注意:生产环境部署时不要开启debug模式,避免安全风险。
内容的提问来源于stack exchange,提问作者Umut K.
相关产品推荐
相关产品推荐

