我有一个烧瓶应用程序脚本,如下所示:
from flask import Flask
app = Flask(__name__)
@app.route("/<string:job_id>")
def main(job_id):
return "Welcome!. This is Flask Test Part 1"
if __name__ == "__main__":
job_id = 1234
app.run(host= '0.0.0.0')
我有另一个烧瓶应用程序脚本如下:
from flask import Flask
app = Flask(__name__)
@app.route("/<string:ID>")
def main(ID):
return "Welcome!. This is Flask Test Part 2"
if __name__ == "__main__":
ID = 5678
app.run(host= '0.0.0.0')
两个脚本之间的唯一区别是参数名称及其值。现在我的问题是假设我正在执行第一个脚本。所以我会得到像
这样的东西* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
当我在浏览器中执行http://127.0.0.1:5000/1234时,我能够看到
“欢迎!这是Flask测试第1部分”
现在这个服务器处于活动状态,我正在执行第二个脚本。所以我再次
* Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
但是当我在浏览器中执行http://127.0.0.1:5000/5678时,我能够看到
“欢迎!这是Flask测试第1部分”
而不是
“欢迎!这是Flask Test Part 2”
我不明白我在哪里做错了。任何输入或更改都会有所帮助
答案 0 :(得分:6)
Flask开发服务器默认侦听端口5000
。因此,当您运行没有端口号的Flask应用程序时,它将在5000
上运行。
您可以在同一台计算机上运行多个Flask应用程序但使用不同的端口号。假设您的脚本名称为script1.py
和script2.py
:
$ export FLASK_APP=script1.py
$ flask run --host 0.0.0.0 --port 5000
打开一个新终端
$ export FLASK_APP=script2.py
$ flask run --host 0.0.0.0 --port 5001
答案 1 :(得分:0)
在运行第二个脚本之前,您是否清除了缓存。有时浏览器在端口上存储了previos数据,因此它将显示旧数据。
您可以清除缓存,然后运行第二个脚本。然后执行并查看。 我希望它能解决问题