Flask应用路由配置异常问题咨询
Flask应用路由配置异常问题咨询
嘿,我来帮你排查这个问题哈!
你现在遇到的核心问题是:路由和函数的对应关系完全配错了!
看你的代码,你把/、/index、/health、/RunTest这四个路由,全用@app.route()装饰器绑定到了index()函数上。而你写的health()和RunTest()这两个函数,根本没加对应的路由装饰器——Flask完全不知道这俩函数要对应哪个访问路径,所以不管你访问哪个URL,都会默认执行index()函数,返回的自然都是同一段内容,其他函数根本没机会被调用。
给你调整后的正确代码,你参考着改:
from flask import Flask from perf_api_linux import PerfAPILinux app = Flask(__name__) @app.route('/') @app.route('/index') def index(): return "<p>Ready To go on Home Page</p>" # return "<p>Hello, World!</p>" @app.route('/health') def health(): print ("Health Matters") return "<p>Hello from HealthCheck</p>" @app.route('/RunTest') def RunTest(): print("Test Execution Beginning") PerfAPILinux.execute() return "Test Complete"
简单说下修改点:
- 把
/health路由装饰器移到health()函数上方,/RunTest移到RunTest()函数上方,让每个路由和对应的处理函数绑定 - 顺手把你返回的HTML里的
<p>闭合标签改成了</p>(这个是小细节,不影响路由,但能让HTML渲染更规范)
这样调整后,你访问不同的路径就会触发对应的函数,返回各自的内容啦!
备注:内容来源于stack exchange,提问作者CrazyHarry
相关产品推荐
相关产品推荐

