融合之道:将Python的智慧注入SpringBoot的血脉
from flask import Flask, request
import os
import json
import subprocess
app = Flask(__name__)
@app.route('/run_python_script', methods=['POST'])
def run_python_script():
# 获取请求数据
data = request.get_json(force=True)
script_path = data['script_path']
script_args = data.get('script_args', [])
# 构建命令行参数
cmd = ['python3', script_path] + script_args
# 执行Python脚本
result = subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, text=True)
# 返回执行结果
return json.dumps({
'stdout': result.stdout.strip(),
'stderr': result.stderr.strip(),
'returncode': result.returncode
})
if __name__ == '__main__':
app.run(debug=True, host='0.0.0.0', port=int(os.environ.get('PORT', 5000)))
这段代码演示了如何在Spring Boot应用中嵌入一个Flask服务器,并通过Flask提供的接口来运行Python脚本。它使用了subprocess.run
来执行Python脚本,并通过HTTP接口返回了标准输出、标准错误和返回码。这是一个简单的示例,用于说明如何将Python集成到Spring Boot应用中。
评论已关闭