服务器之家

服务器之家 > 正文

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

时间:2021-10-15 10:57     来源/作者:专业bug开发

前言

看到这篇文章我就默认你已经在你的电脑上使用 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)的使用

到此这篇关于Flask交互基础(GET、 POST 、PUT、 DELETE)的使用的文章就介绍到这了,更多相关Flask交互内容请搜索服务器之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持服务器之家!

原文链接:https://blog.csdn.net/k1507157/article/details/115759183

标签:

相关文章

热门资讯

yue是什么意思 网络流行语yue了是什么梗
yue是什么意思 网络流行语yue了是什么梗 2020-10-11
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全
2020微信伤感网名听哭了 让对方看到心疼的伤感网名大全 2019-12-26
背刺什么意思 网络词语背刺是什么梗
背刺什么意思 网络词语背刺是什么梗 2020-05-22
2021年耽改剧名单 2021要播出的59部耽改剧列表
2021年耽改剧名单 2021要播出的59部耽改剧列表 2021-03-05
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总
苹果12mini价格表官网报价 iPhone12mini全版本价格汇总 2020-11-13
返回顶部