Flask 获取POST GET基本方法

Posted python学习手册

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Flask 获取POST GET基本方法相关的知识,希望对你有一定的参考价值。

    Django 框架有着出色的ORM,

    但是有时候需要几个接口的web甚至不需要操作数据库,Django 就显着有点重了.我的建议是使用比较轻量级的框架Flask

    下面就简单的介绍一下Flask 一些基本的接受请求的方法:   

    Tip: 建议把你的大手机横过来观看

#coding=utf-8
from flask import Flask
from flask import request
import json

app = Flask(__name__)

# 设置访问路由
@app.route('/hello',methods=['GET','POST'])
def GetPostHandler():
   
# GET请求逻辑
   
if request.method == 'GET':
       
# 获取GET请求的参数id 如果没有则赋值字符串null
       
_id = request.args.get('id','null')
# 获取Header里的'Host'
       
print request.headers['Host']
# 访问curl http://127.0.0.1:8888/hello?id=abc 结果返回id is : abc
       
return "id is : %s" %  _id
# POST请求逻辑
   
if request.method == 'POST':
       
# 获取POST表单参数id 如果没有则赋值字符串null,这种方法只能获取标准的from表单或者 x-www-form-urlencoded 结构数据
       
_postid = request.form.get('id','null')
# 访问curl -X POST -d "id=abc" http://127.0.0.1:8888/hello   结果返回_postid is: abc
       
return "_postid is: %s" % (_postid)

app.route('/json',methods='POST')
def JsonHandler():
   
if request.method == 'POST':
       
# 获取请求原始数据
       
jsondata = request.data
# 自己用json 模块解析
       
data = json.loads(jsondata)
# 打印为dict 类型
       
print  type(data)
# request还有个获取json的方法 为request.get_json()此方法必须Content-Type : application/json
       
return "ok"


if __name__ == '__main__':
   
app.debug=True
   
app.run(host='0.0.0.0',port=8888)

GET,POST用法会了,就可以做一些基本的交互了. 赶紧打开你的IDE小试一下吧


以上是关于Flask 获取POST GET基本方法的主要内容,如果未能解决你的问题,请参考以下文章

request.form.get总是返回默认值

尽管使用 POST,但不允许使用 Flask- 方法 [重复]

flask第十三篇——url注意事项

Flask 学习-3.设置 HTTP 请求 方法(get/post)

flask实现关于json的get/post/put/delete方法

python-flask基础