【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)
相关推荐
丘山子18 分钟前
一些鲜为人知的 IP 地址怪异写法
前端·后端·tcp/ip
蓝莓味柯基22 分钟前
Python3:文件操作
python
CopyLower42 分钟前
在 Spring Boot 中实现 WebSockets
spring boot·后端·iphone
xiaoh_71 小时前
解决视频处理中的 HEVC 解码错误:Could not find ref with POC xxx【已解决】
python·ffmpeg·音视频
明月与玄武1 小时前
Python编程的真谛:超越语法,理解编程本质
python·编程语言
CodeCraft Studio1 小时前
Excel处理控件Aspose.Cells教程:使用 Python 在 Excel 中进行数据验
开发语言·python·excel
.生产的驴2 小时前
SpringBoot 封装统一API返回格式对象 标准化开发 请求封装 统一格式处理
java·数据库·spring boot·后端·spring·eclipse·maven
景天科技苑2 小时前
【Rust】Rust中的枚举与模式匹配,原理解析与应用实战
开发语言·后端·rust·match·enum·枚举与模式匹配·rust枚举与模式匹配
拾忆-eleven2 小时前
C语言实战:用Pygame打造高难度水果消消乐游戏
c语言·python·pygame
追逐时光者2 小时前
MongoDB从入门到实战之Docker快速安装MongoDB
后端·mongodb