You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Flask开发API运行时返回404 Not Found错误如何解决

问题根因

你遇到的404 Not Found错误由两个问题共同导致:

  • 路由注册逻辑未触发:wsgi.py作为启动入口,仅导入了src包下初始化好的app实例,从未加载routes.py模块。routes.py中写的api.add_resource(Smoke, '/')属于模块顶层代码,只有模块被导入时才会执行,也就是说你的Flask应用从始至终都没注册根路径的路由规则,访问自然返回404。
  • 类视图方法参数错误:Smoke类继承自flask_restful.Resource,属于类视图,其中定义的get()请求方法是实例方法,必须携带self参数,否则即使路由注册成功,请求触发时也会抛出参数不匹配的错误,无法正常返回响应。
修复步骤
  1. 在启动入口导入路由模块,确保路由注册代码在应用启动时执行。修改wsgi.py内容如下:
    from src import app
    # 新增导入routes模块,触发路由注册逻辑
    import src.routes
    
    if __name__ == '__main__':
        app.run()
    
  2. 修复类视图方法的参数缺失问题,给get方法补上self参数。修改routes.py内容如下:
    from flask_restful import Resource
    from src import api
    
    
    class Smoke(Resource):
        # 补充实例方法必需的self参数
        def get(self):
            return {'message': 'Ok'}, 200
    
    
    api.add_resource(Smoke, '/')
    

修改完成后重启Flask开发服务,访问http://127.0.0.1:5000/即可正常拿到{"message":"Ok"}的200响应,不会再出现404报错。

内容的提问来源于stack exchange,提问作者Black Orange

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.31 00:48:16