精易论坛

标题: Python使用Flask实现api接口 [打印本页]

作者: a475972878    时间: 2024-6-6 23:20
标题: Python使用Flask实现api接口
本帖最后由 a475972878 于 2024-6-7 13:09 编辑

[Python] 纯文本查看 复制代码
from flask import Flask, request, jsonify

app = Flask(__name__)

# 处理GET请求的示例
@app.route('/get_example', methods=['GET'])
def get_example():
    # 获取GET请求中的参数值
    param1 = request.args.get('param1')
    param2 = request.args.get('param2')

    # 构建返回的JSON数据
    response = {
        "message": "GET request received",
        "param1": param1,
        "param2": param2
    }

    # 返回JSON数据
    return jsonify(response)

# 处理POST请求的示例
@app.route('/post_example', methods=['POST'])
def post_example():
    # 获取POST请求中的URL参数值
    url_param1 = request.values.get('url_param1')
    url_param2 = request.values.get('url_param2')

    # 获取POST请求中的Body值
    body_param1 = request.json.get('body_param1')
    body_param2 = request.json.get('body_param2')

    # 构建返回的JSON数据
    response = {
        "message": "POST request received",
        "url_param1": url_param1,
        "url_param2": url_param2,
        "body_param1": body_param1,
        "body_param2": body_param2
    }

    # 返回JSON数据
    return jsonify(response)

if __name__ == '__main__':
    # 启动Flask应用
    # debug=True:开启调试模式,便于开发时调试错误,自动重载代码
    # host='0.0.0.0':让服务器可被外部访问,而不仅仅是本地访问
    app.run(debug=True, host='0.0.0.0')



代码说明
导入必要的模块:

from flask import Flask, request, jsonify

创建Flask应用:

app = Flask(__name__)

处理GET请求的路由:

@app.route('/get_example', methods=['GET']) def get_example(): # 获取GET请求中的参数值 param1 = request.args.get('param1') param2 = request.args.get('param2') # 构建返回的JSON数据 response = { "message": "GET request received", "param1": param1, "param2": param2 } # 返回JSON数据 return jsonify(response)

request.args.get('param1') 用于获取GET请求中的参数值。
构建一个包含参数值的JSON响应并返回。
处理POST请求的路由:

@app.route('/post_example', methods=['POST']) def post_example(): # 获取POST请求中的URL参数值 url_param1 = request.args.get('url_param1') url_param2 = request.args.get('url_param2') # 获取POST请求中的Body值 body_param1 = request.json.get('body_param1') body_param2 = request.json.get('body_param2') # 构建返回的JSON数据 response = { "message": "POST request received", "url_param1": url_param1, "url_param2": url_param2, "body_param1": body_param1, "body_param2": body_param2 } # 返回JSON数据 return jsonify(response)

request.args.get('url_param1') 用于获取POST请求中的URL参数值。
request.json.get('body_param1') 用于获取POST请求中的Body值。
构建一个包含URL参数值和Body值的JSON响应并返回。
启动Flask应用:

if __name__ == '__main__': # 启动Flask应用 # debug=True:开启调试模式,便于开发时调试错误,自动重载代码 # host='0.0.0.0':让服务器可被外部访问,而不仅仅是本地访问 app.run(debug=True, host='0.0.0.0')

debug=True:开启调试模式,这样可以在代码更改时自动重新加载,并在浏览器中显示错误信息,非常适合开发和调试。
host='0.0.0.0':让Flask应用监听所有可用的网络接口,使得服务器可以被局域网中的其他设备访问,而不仅仅是本地访问(localhost)。
这段代码实现了一个简单的Flask应用,可以处理GET和POST请求,并返回包含请求参数的JSON响应。


作者: fire9    时间: 2024-6-7 01:00
部署到服务器方法也写写
作者: 陈大奶么么哒    时间: 2024-6-7 01:19
fire9 发表于 2024-6-7 01:00
部署到服务器方法也写写

最简单粗暴的方式 直接打包成exe到服务器直接打开就行了
作者: a475972878    时间: 2024-6-7 12:28
fire9 发表于 2024-6-7 01:00
部署到服务器方法也写写

下期写,慢慢来,当笔记写了
作者: fire9    时间: 2024-6-7 12:30
陈大奶么么哒 发表于 2024-6-7 01:19
最简单粗暴的方式 直接打包成exe到服务器直接打开就行了

ubuntu。   
作者: fire9    时间: 2024-6-7 12:31
a475972878 发表于 2024-6-7 12:28
下期写,慢慢来,当笔记写了

我之前用的是uwsgi。
作者: a475972878    时间: 2024-6-7 12:51
fire9 发表于 2024-6-7 12:30
ubuntu。

一样的,后期我出个教程
作者: fire9    时间: 2024-6-7 12:52
a475972878 发表于 2024-6-7 12:51
一样的,后期我出个教程

论坛还可以写这个啊。我笔记都是写到博客上去了。
作者: q838210720    时间: 2024-6-7 13:02


def post_example():


获取POST请求中的URL参数值


url_param1 = request.args.get('url_param1')

url_param2 = request.args.get('url_param2')





作者: a475972878    时间: 2024-6-7 13:08
q838210720 发表于 2024-6-7 13:02
[md]> def post_example():
    # 获取POST请求中的URL参数值
    url_param1 = request.args.get('url_pa ...

对,我修改一下
作者: 陈大奶么么哒    时间: 2024-6-7 14:24
fire9 发表于 2024-6-7 12:30
ubuntu。

u班图的话比较麻烦一点  需要把源码弄过去




欢迎光临 精易论坛 (https://125.confly.eu.org/) Powered by Discuz! X3.4