我使用Flask构建了一个简单的Web应用程序。这样做基本上是从表单中获取数据并发送POST - 然后使用
将其作为命令行参数传递给脚本os.popen("python3 script.py " + postArgument).read()
该命令存储在一个变量中,然后传递给带有结果的新页面中的元素。
关于脚本:它通过API在POST中运行字符串,获取一些数据,处理它,将其发送到另一个API并最终打印结果(最终存储在变量中) )
它在本地服务器上运行良好。但Azure无法返回任何内容。该字符串为空。
如何获取一些终端日志?
有解决方案吗?
答案 0 :(得分:0)
根据我的经验,似乎问题是由Azure上的Python 3(即使是Python 2)解释器python
引起的,而不是python3
。
因此,如果您已在Azure门户上为应用程序设置配置了Python 3运行时环境(如下图所示),请在代码中使用python script.py
代替python3 script.py
。
或者您也可以在代码中使用Azure WebApp D:\Python34\python
上的Python 3的绝对路径而不是python3
,如下所示。
但是,除了上述情况,我还怀疑你的另一个可能的问题。您可以使用一些不在Azure上使用pip
安装的python包。如果是这样,您需要参考Azure官方文档的Troubleshooting - Package Installation
部分以解决可能的问题。
希望它有所帮助。任何关注&更新,请随时告诉我。