Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

作者:专业bug开发 时间:2022-01-17 11:00:04 

前言

看到这篇文章我就默认你已经在你的电脑上使用 pipenv搭建好了虚拟环境并且设置好了开发环境(pycharm)。如果没有,请参照这篇文章。文章传送门

第一个flask程序


from flask import Flask    #导入Flask类
app = Flask(__name__)  # 实例化flask

@app.route('/') # 使用路由,给 hello 函数定义一个路由,然后游览器通过http 请求得到相对应的数据
def hello_world():
   return 'Hello, World!'

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

GET

请求指定的页面信息,并返回实体主体。

1.GET_传参1


# GET——传参方式1

from flask import Flask, request

app = Flask(__name__)

@app.route('/api/get')
def testGet():
   name = request.args.get('name')
   ('name')

print(name)
   return name + "是大哥!"

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

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

2.GET_传参2


# GET_传参方式2

from flask import Flask, request

app = Flask(__name__)

@app.route("/api/get/<int:id>")
def testGetPath(id):
   print(type(id))
   return f"收到参数 {id}"

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

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

POST

向指定资源提交数据进行处理请求(例如提交表单或者上传文件)。数据被包含在请求体中。POST
请求可能会导致新的资源的建立和/或已有资源的修改。

1.POST_form


# post_form

from flask import Flask, request

app = Flask(__name__)

# post form-data
@app.route("/api/post/form", methods=["POST"])
def testPostForm():
   username = request.form.get("username")
   password = request.form.get("password")
   print(username, password)
   data = {
       "username": username,
       "password": password
   }
   return data

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

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

2.POST_ json


from flask import Flask, request, jsonify

app = Flask(__name__)

class Student():

def __init__(self, id, name, age):
       self.id = id
       self.name = name
       self.age = age

# toString
def __repr__(self):
       return f"Student[id={self.id},name={self.name},age={self.age}]"
@app.route("/api/post/json",methods=["POST"])
def testPostJson():
   id = request.json.get("id")
   name = request.json.get("name")
   age = request.json.get("age")
   stu = Student(id,name,age)
   print(stu)
   return "测试OK了!"

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

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

PUT

从客户端向服务器传送的数据取代指定的文档的内容。

1.PUT_传参1


from flask import Flask, request

app = Flask(__name__)

@app.route("/api/put/<int:id>")
def testPut(id):
   print(type(id))
   return f"上传参数 {id}"

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

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

2.PUT_传参2


from flask import Flask, request

app = Flask(__name__)

# PUT传参——2
@app.route("/api/put", methods=["PUT"])
def testPut():
   name = request.args.get('name')
   print(type(name))
   return f"上传参数 {name}"

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

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

3.PUT_ json


from flask import Flask, request, jsonify

app = Flask(__name__)

class Student():

def __init__(self, id, name, age):
       self.id = id
       self.name = name
       self.age = age

def __repr__(self):
   return f"Student[id={self.id},name={self.name},age={self.age}]"
@app.route("/api/put/json", methods=["PUT"])
def testPutJson():
   id = request.json.get("id")
   name = request.json.get("name")
   age = request.json.get("age")
   stu = Student(id, name, age)
   print(stu)
   return "PUT传json测试成功!!"

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

运行结果:

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

DELETE

请求服务器删除指定的页面。

DELETE_传参


from flask import Flask, request, jsonify

app = Flask(__name__)

@app.route('/api/delete', methods=["DELETE"])    # 方式1
def testDelete():
   name = request.args.get('name')
   print(name)
   return name + "是大哥!"

@app.route("/api/delete/<int:ID>", methods=["DELETE"])    #方式2
def testGetPath(ID):
   print(type(ID))
   return f"测试值为 {ID}"

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

运行结果同上!!!

补充内容

Flask交互基础(GET、 POST 、PUT、 DELETE)的使用

来源:https://blog.csdn.net/k1507157/article/details/115759183

标签:Flask,交互,GET,POST,PUT,DELE
0
投稿

猜你喜欢

  • 教你轻松掌握如何正确的修复Access数据库

    2008-11-28 16:21:00
  • Oracle 查看表空间的大小及使用情况sql语句

    2023-07-14 20:06:31
  • 浅析python递归函数和河内塔问题

    2023-03-05 21:27:33
  • Python多重继承之菱形继承的实例详解

    2022-08-06 20:29:11
  • js实现类bootstrap模态框动画

    2024-04-18 09:31:12
  • ASP.NET MVC把数据库中枚举项的数字转换成文字

    2024-01-16 07:35:39
  • Codeigniter控制器controller继承问题实例分析

    2023-11-23 04:15:31
  • Python中最大递归深度值的探讨

    2021-01-16 14:21:21
  • ASP 读取MP3文件帧的信息比特率,采样频率,播放时间

    2010-06-04 12:22:00
  • Python中常用的os操作汇总

    2022-12-13 08:30:16
  • JS模拟简易滚动条效果代码(附demo源码)

    2024-04-23 09:22:45
  • PHP xpath提取网页数据内容代码解析

    2024-06-05 15:39:35
  • Python字符串函数strip()原理及用法详解

    2021-12-01 12:08:12
  • 使用pandas实现csv/excel sheet互相转换的方法

    2022-05-22 18:38:18
  • 详解python-docx处理Word必备工具

    2023-10-03 03:15:08
  • python中import学习备忘笔记

    2021-05-15 02:27:14
  • 正则表达式不匹配某个字符串

    2010-03-02 22:08:00
  • Python手动或自动协程操作方法解析

    2023-06-30 11:38:41
  • Linux虚拟机下mysql 5.7安装配置方法图文教程

    2024-01-13 11:55:08
  • vue实现简单的登录弹出框

    2024-05-21 10:30:12
  • asp之家 网络编程 m.aspxhome.com