python flask 提供web的get/post开发
阅读原文时间:2023年09月02日阅读:1

转载请注明出处:

  使用python flask框架编写web api中的get与post接口,代码编写与调试示例如下:

from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/api/get', methods=['GET'])
def handle_get_request():
try:
# 解析URL参数
param1 = request.args.get('param1')
param2 = request.args.get('param2')

    # 在这里处理GET请求的逻辑  
    # ...

    # 返回响应体为JSON数据  
    response = {'message': 'Success', 'data': {'param1': param1, 'param2': param2}}  
    return jsonify(response)  
except Exception as e:  
    # 异常捕捉并返回错误信息  
    error\_response = {'message': str(e)}  
    return jsonify(error\_response), 500

@app.route('/api/post', methods=['POST'])
def handle_post_request():
try:
# 解析JSON请求体
json_data = request.get_json()

    # 在这里处理POST请求的逻辑  
    # ...

    # 返回响应体为JSON数据  
    response = {'message': 'Success', 'data': json\_data}  
    return jsonify(response)  
except Exception as e:  
    # 异常捕捉并返回错误信息  
    error\_response = {'message': str(e)}  
    return jsonify(error\_response), 500

if __name__ == '__main__':
app.run(host='0.0.0.0', port=5000)

  启动这段代码,并调试:

  

  使用curl命令调试接口:

  curl的命令如下:

  使用curl发送GET请求的命令示例:

curl 'http://localhost:15000/api/get?param1=value1&param2=value2'

  使用curl发送POST请求的命令示例:

curl -X POST -H 'Content-Type: application/json' -d '{"key1": "value1", "key2": "value2"}' http://localhost:15000/api/post

  后台运行python:

  运行以下命令来启动Flask服务,并将输出重定向到一个日志文件(例如flask.log)中:

nohup python your_flask_app.py > flask.log 2>&1 &