python + Flask模块学习 2 接收用户请求并返回json数据

用到的模块还是flask,用到的类有Flask, request, jsonfiy 🙂

目录

1、GET请求

2、POST请求

1、表单格式

2、json格式

就酱,也比较简单,下一篇说简单的授权,简单来说就是比如用户付费买了服务,怎么校验该用户是否有门卡进门使用功能(●'◡'●)


1、GET请求

  • 一般参数在url中
  • 用request.args.get获取url中用户传过来的参数

示例数据

http://127.0.0.1.5000/index?age=19\&pwd=234

python 复制代码
from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/index', methods=['GET'])
def index():
    # 获取查询参数
    age = request.args.get('age')
    pwd = request.args.get('pwd')

    # 返回获取的参数作为响应
    return jsonify({'age': age, 'pwd': pwd})

if __name__ == '__main__':
    app.run(debug=True)

2、POST请求

  • 参数在body中 分为表单格式和json格式
  • 分别用request.form.get / request.json.get 去获取用户传入的数据
1、表单格式

示例数据

http://127.0.0.1.5000/index?age=2\&pwd=7687

POST

python 复制代码
from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/', methods=['POST'])
def process_form():
    # 从表单数据中提取参数
    age = request.form.get('age')
    pwd = request.form.get('pwd')

    # 返回成功的 JSON 响应
    return jsonify({
        'status': 'success',
        'message': 'Form request processed successfully',
        'data': {
            'age': age,
            'pwd': pwd
        }
    }), 200

if __name__ == '__main__':
    app.run(debug=True)
2、json格式

示例数据

http://127.0.0.1.5000/index

POST

{'age':2, 'pwd':7687}

多句嘴 python常用的处理json数据的方法有下面几种,

用Python 标准库自带的 json 模块是处理 JSON 数据的基础工具,支持 JSON 与 Python 数据类型的相互转换。

核心方法:

  • json.dumps():将 Python 对象转换为 JSON 字符串
  • json.loads():将 JSON 字符串转换为 Python 对象
  • json.dump():将 Python 对象写入文件(JSON 格式)
  • json.load():从文件读取 JSON 数据并转换为 Python 对象

但是flask中的jsonify就直接jsonify()即可 比较简单 咱们直接用这个就好了

python 复制代码
from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/', methods=['POST'])
def process_data():
    # 从请求的 JSON 主体中获取数据
    age = request.json.get('age')
    pwd = request.json.get('pwd')
    
    # 在这里可以处理 age 和 pwd 的业务逻辑
    
    # 返回成功的 JSON 响应
    return jsonify({
        'status': 'success',
        'message': 'Post request processed successfully',
        'data': {
            'age': age,
            'pwd': pwd
        }
    }), 200

if __name__ == '__main__':
    app.run(debug=True)

为什么要获取用户传入的数据, 我们在返回给数据到用户之前,需要做数据存储与分析或者个性化交互等功能,再比如说验证这个用户是否有权向我们的服务器发送数据啊等等,我们做一系列的算法处理,功能之后返回给用户数据,知道这个之后,也就能get到拿取用户传过来的数据是进行后续学习的基础

就酱,也比较简单,下一篇说简单的授权,简单来说就是比如用户付费买了服务,怎么校验该用户是否有门卡进门使用功能(●'◡'●)

相关推荐
软件技术NINI几秒前
JavaScript性能优化实战指南
前端·css·学习·html
Blossom.11816 分钟前
多模态大模型LoRA微调实战:从零构建企业级图文检索系统
人工智能·python·深度学习·学习·react.js·django·transformer
小钻风336625 分钟前
软件测试: 从入门到实践 (接口测试)
软件测试·python
小鸡吃米…44 分钟前
带Python的人工智能——计算机视觉
人工智能·python·计算机视觉
一 乐1 小时前
健身房预约|基于springboot + vue健身房预约小程序系统(源码+数据库+文档)
java·数据库·vue.js·spring boot·后端·学习·小程序
sbc-study1 小时前
comsol学习-碱性电解槽堆中的分流-电化学,水解电槽,碱性
学习·comsol·电解槽·碱性·非局部耦合算子
wdfk_prog1 小时前
[Linux]学习笔记系列 -- [fs]kernfs
linux·笔记·学习
玄同7651 小时前
Python 数据类型:LLM 语料与 API 参数的底层处理逻辑
开发语言·人工智能·python·自然语言处理·llm·nlp·知识图谱
代码游侠1 小时前
学习笔记——IO多路复用技术
linux·运维·数据库·笔记·网络协议·学习
databook1 小时前
数据分析师的“水晶球”:时间序列分析
python·数据挖掘·数据分析