一、python环境配置
目的是双击py文件,可以执行
右键我的电脑选择属性 - 高级选项 - 右下角的环境变量 - 系统变量 - 选择path并编辑 - 找到安装python的安装目录,复制路径或者自己手动编辑也行 - 新增粘贴
切记:选择Python.exe,而不是Pythonw.exe(它不显示窗口)
二、Flask服务器代码(app.py)
from flask import Flask, request, jsonify
import subprocess
app = Flask(__name__)
@app.route('/run', methods=['POST'])
def run_script():
try:
# 检查请求的内容类型
if request.content_type != 'application/json':
return jsonify({"error": "Content-Type must be application/json"}), 415
data = request.json
script_name = data.get('script_name')
params = data.get('params', [])
result = subprocess.run(['python', script_name] + params, capture_output=True, text=True)
return jsonify({
'output': result.stdout if result.returncode == 0 else result.stderr
})
except Exception as e:
return jsonify({'error': str(e)})
if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)
启动Flask服务器
双击运行app.py,并显示类似以下内容:
- Serving Flask app “app” (lazy loading)
- Environment: production
WARNING: This is a development server. Do not use it in a production deployment.
Use a production WSGI server instead. - Debug mode: off
- Running on http://0.0.0.0:5000/ (Press CTRL+C to quit)
三、设置Postman并发送请求
1.什么是postman?
允许开发人员测试、记录和共享 API(应用程序编程接口)
也就是所谓的HTTP客户端,指能够发送HTTP请求并接收HTTP响应的软件或库。HTTP(HyperText Transfer Protocol)是用于在客户端和服务器之间传输数据的协议。HTTP客户端可以是浏览器、命令行工具(如curl)、专门的应用程序(如postman),或者编程语言中的库(如Python的requests库)。
2.在Postman中设置请求的内容类型:
- 打开Postman。
- 创建一个新的POST请求。
- 设置请求URL为:
http://localhost:5000/run
- 设置请求方法为:POST
- 设置请求头:
点击Headers选项卡。
添加一个新的Header:
Key: Content-Type
Value: application/json
- 设置请求体:
点击Body选项卡。
选择raw,并在右侧选择JSON格式。
输入以下JSON数据:
{
"script_name": "script.py",
"params": ["man", "rock"]
}
"script.py"是指想要运行的py文件
- 点击“Send”按钮发送请求。
验证请求
确保所有步骤正确完成后,发送请求时应该能得到预期的响应。如果仍然遇到问题,请确认以下几点:
- Flask服务器确实在运行。
- Postman请求的URL和方法是正确的。
- 请求头中的Content-Type确实设置为application/json。
- 请求体是有效的JSON格式。
按照这些步骤,你应该能够成功通过Postman向Flask服务器发送请求,并获得Python脚本的执行结果。