当前位置: 首页 > news >正文

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

from flask import Flask, request, jsonifyapp = 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

from flask import Flask, request, jsonifyapp = 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}}), 200if __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()即可 比较简单 咱们直接用这个就好了 

from flask import Flask, request, jsonifyapp = 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}}), 200if __name__ == '__main__':app.run(debug=True)

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

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

http://www.xdnf.cn/news/1467775.html

相关文章:

  • 智能工单路由系统(Java)
  • 小补充: IPv6 安全RA
  • 苹果 AI 探秘:代号 “AFM” —— “温柔的反叛者”
  • 案例精选 | 南京交通职业技术学院安全运营服务建设标杆
  • 【前端教程】JavaScript 实现爱好选择与全选/全不选功能
  • 硬件基础:串口通信
  • P1106 删数问题
  • 鼓励员工提出建议,激发参与感——制造企业软件应用升级的密钥
  • 02-Media-5-mp4demuxer.py 从MP4文件中提取视频和音频流的示例
  • 敏捷开发-Scrum(上)
  • 硬件(三) 通信方式、串口通信
  • K8S-Pod(上)
  • 2025国赛C题创新论文+代码可视化 NIPT 的时点选择与胎儿的异常判定
  • 与优秀者同行,“复制经验”是成功的最快捷径
  • CAD【xplode】和【explode】功能的区别
  • 电磁波成像(X射线、CT成像)原理简介
  • 【AI产品思路】AI能力展示中心:产品设计与体验优化方案
  • shell简单使用(-)判断
  • 在Windows中已经启动的容器(比如xinference),如何设置让其在每次Docker启动时能自动启动
  • Java对象在内存中的布局详解
  • 【mysql】SQL查询全解析:从基础分组到高级自连接技巧
  • 如何将联系人从 iPhone 转移到 Redmi 手机
  • 亲戚关系计算器,秒懂全家称呼!
  • 基于YOLO目标检测模型的视频推理GUI工具
  • 超越自动化:为什么说供应链的终局是“AI + 人类专家”的混合智能?
  • Web服务与Nginx详解
  • 【服务器】英伟达M40显卡风冷方案心得
  • Git 工具的「安装」及「基础命令使用」
  • 从零到上线:Docker、Docker Compose 与 Runtime 安装部署全指南(含实战示例与应用场景)
  • 小团队如何高效完成 uni-app iOS 上架,从分工到工具组合的实战经验