【Flask】Flask中HTTP请求与接收

一、接收http请求与返回响应

在Flask中,可以通过@app.route装饰器来定义路由函数。

复制代码
@app.route('/BringGoods',methods = ['POST', 'GET'])

GET请求:使用request.args.get('key')或者request.values.get('key')来获取URL中的参数。

POST请求:

  • 使用request.form.get('key')或者request.form'key'来获取表单数据;
  • 使用request.json.get('key')或者request.get_json()'key'来获取JSON数据
  • 使用request.files来访问上传的文件。

实例代码:

复制代码
@app.route('/BringGoods',methods = ['POST', 'GET'])
def bringgoods():
    if request.method == 'POST':
        ord = request.json.get("ord")
        print(ord)
        data = {
            "msg":"ok"
        }
        return json.dumps(data)
    if request.method == 'GET':
        ord = request.values.get("name")
        print(ord)
        data = {
            "msg":"ok"
        }
        return json.dumps(data)

另附:postman接口测试图

POST方式:

GET方式:

二、 发送http请求

复制代码
import requests
import datetime
import json
#接口调用post传参
def send_data(url,data):
    headers = 
    {
        "Content-Type":"application/json"
    }
    try:
        response = requests.post(url=url,json=data,headers=headers)
        response.raise_for_status()
        processed_data = json.loads(response.content)
        print("processed_data",processed_data)
    except requests.exceptions.RequestException as e:
        print("error",e)

 
if __name__ == "__main__":
    wms_url = "http://*.*.*.*:7000/BringGoods"
    now_time = datetime.datetime.now().strftime('%Y-%m-%d %H:%M:%S')
    nopark_data ={
        "time":now_time,
        "ord": "44"
    }
    print(nopark_data)
    send_data(wms_url,nopark_data)
相关推荐
2501_947575802 小时前
计算机毕业设计之jsp开山车行二手车交易系统
java·开发语言·hadoop·python·信息可视化·django·课程设计
独孤九剑打醒他3 小时前
双层Master-Worker软硬协同调度架构:从根源解决分布式数据一致性难题
后端·嵌入式硬件·硬件架构·硬件工程
Byron__3 小时前
AI学习_06_短期记忆与长期记忆
人工智能·python·学习
取经蜗牛4 小时前
Python 第一阶段完全指南:从零到第一个实用工具
开发语言·python
创世宇图4 小时前
【Python工程化实战】OpenTelemetry 在 Python 中的全链路追踪落地:从埋点到可视化的完整实战指南
python·分布式链路追踪·性能监控·opentelemetry·微服务可观测性
不会c+4 小时前
02-SpringBoot配置文件
java·spring boot·后端
许彰午5 小时前
72_Python爬虫基础BeautifulSoup
爬虫·python·beautifulsoup
雨辰AI5 小时前
生产级实战:人大金仓 V9 标准化运维手册(日常巡检 + 监控告警 + 应急处置)
java·运维·数据库·后端
zhanghongyi_cpp5 小时前
10. 实验书3.4.2 筛选达到预警阈值的病虫害数据
python
tuddy7894646 小时前
Codex++ 安全边界探秘:从模型能力到风险防御
人工智能·python·安全