python - flaskapp - 两个不同 python 脚本中的两个 api 资源
问题描述
我有一个用例是我需要通过烧瓶从同一服务器运行多个 python 脚本。
script1.py
如下
app = Flask(__name__)
api = Api(app)
class App(Resource):
def post(self):
resp = Response('successfully tested')
return(resp)
api.add_resource(App, '/testapp')
if __name__ == "__main__":
app.run(port=6000, host="0.0.0.0", use_reloader=True)
同样script2.py
是
app = Flask(__name__)
api = Api(app)
class Test(Resource):
def post(self):
resp = Response('successfully tested')
return(resp)
api.add_resource(Test, '/test')
if __name__ == "__main__":
app.run(port=5000, host="0.0.0.0", use_reloader=True)
当我按预期执行两项工作时,单独进行,http://0.0.0.0:5000/test
并且http://0.0.0.0:5000/testapp
工作正常。
但是,当我将这些脚本配置为服务并尝试发布 URL 时,其中一个将起作用,而另一个则失败。
我做得对吗?
解决方案
您不能这样做,因为烧瓶服务器需要绑定到端口 [5000]。您必须在不同的端口上运行这两个脚本,然后您可以使用 Nginx 根据 API 规则代理传递它们。像下面的东西
https://serverfault.com/questions/650117/serving-multiple-proxy-endpoints-under-location-in-nginx 您可以使用任何其他反向代理,也不必使用 Nginx。
推荐阅读
- java - 无法使用 AsyncTask 生成 url 图像
- plc - 是否可以在结构化文本中间接索引数组(IEC 61131-3 标准)
- java - Android 上的简单 MVVM 架构和 Java 上的 AndroidX
- postgresql - 无法从 pg_basebackup 恢复 postgres v11
- webforms - 如何在 Decibel Insight 中实施表单分析跟踪?
- javascript - 如何将 2 个文档(PDF 和 XFDF)从 C# .NET Core WebAPI 控制器返回到 SPA?
- excel - VBA函数用最后一个非空值填充空单元格
- ios - AKButton和手势点击冲突
- java - 无法解析超类型的类。请确保您具有所需的依赖项
- angular - 如何通过更新其 FormControl 将单选按钮设置为选中状态