Flask中如何简便从Request中提取请求的参数值
来源:互联网 发布:戴尔游匣7557优化教程 编辑:程序博客网 时间:2024/06/05 22:41
引言: Flask是Python非常著名的微服务Web框架,但是其并未提供简便的从Request中提取参数的方式,本文将介绍一种简便的方式。
1. Flask-Request-Params
来自第三方的Flask插件,方便从Request中提取相应的参数值。
2. 安装步骤
首先确认系统中已经按照了pip, 如果您还不知道什么pip的话,还请直接问问度娘即可。
>> pip install flask-request-params
[root@xxxx]# pip install flask-request-paramsCollecting flask-request-params Downloading http://mirrors.aliyun.com/pypi/packages/33/14/f41ab27df8d0c59ddfe5063a5bdfcb687174e7573eac62ded2f758b7447f/Flask-request-params-0.3.0.tar.gzBuilding wheels for collected packages: flask-request-params Running setup.py bdist_wheel for flask-request-params ... done Stored in directory: /root/.cache/pip/wheels/f6/31/ef/c20696a93be9b3472ef70a5774cac5cfe3959dc7623f4f6a04Successfully built flask-request-paramsInstalling collected packages: flask-request-paramsSuccessfully installed flask-request-params-0.3.0检查一下pip是否安装成功:
>> pip show flask-request-params
[root@xxxx]# pip show flask-request-paramsName: Flask-request-paramsVersion: 0.3.0Summary: Flask-request-params provides Rails-like interface to HTTP Request Parameters for Flask.Home-page: https://github.com/bluele/flask-request-paramsAuthor: blueleAuthor-email: jksmphone@gmail.comLicense: MITLocation: /opt/python36env/lib/python3.6/site-packagesRequires:3. 如何使用?
客户端代码:
$ curl -X POST http://localhost:5000/echo/user -d 'user[name]=john&user[password]=pass'{ "path": "user", "user": { "name": "john", "password": "pass" }}# support array type$ curl -X POST http://localhost:5000/echo/lang -d 'languages[]=python&languages[]=golang'{ "path": "lang", "languages": [ "python", "golang" ]}# support strong_parameters$ curl -X POST http://localhost:5000/user -d 'user[name]=bluele&user[password]=password'{ "name": "bluele", "password": "password"}服务端代码:
from flask import Flask, request, render_template, jsonifyfrom flask_request_params import bind_request_paramsapp = Flask(__name__)app.secret_key = 'secret'# bind rails like params to request.paramsapp.before_request(bind_request_params)# just return request.params@app.route('/echo/<path>', methods=['GET', 'POST'])def echo(path): return jsonify(request.params)@app.route('/user', methods=['POST'])def create_user(): user = request.params.require('user').permit('name', 'password') # do something return jsonify(user)# serve at localhost:5000app.run(debug=True)核心的代码方法是: request.params.require('xx").permit(),以及, request.params方法
url地址中的参数,以参数的形式传递进入处理函数体之内。
4. 如何获取GET请求中的params?
from flask import request@app.route('/data')def data(): # here we want to get the value of user (i.e. ?user=some-value) user = request.args.get('user') param_str = request.query_string5. 总结
这里列举了三种方式方法来获取Http Request中的参数处理过程,综合来说,还是非常简单易用的。
0 0
- Flask中如何简便从Request中提取请求的参数值
- 从 request 中获取请求参数
- 从request中获取所有请求参数
- 从request对象中获取请求json格式的参数
- EBS 开发中如何动态启用和禁止请求(Current Request)的参数
- flask中request的一些疑惑
- 如何从数码相机的raw照片中提取Bayer Pattern Image和raw照片参数
- 从request中获取上一个请求的url
- 从request中获取上上个请求的url
- 从request中获取上一个请求的url
- 从request中获取上一个请求的url
- 从源码解析Python的Flask框架中request对象的用法
- 从源码解析Python的Flask框架中request对象的用法
- 从request对象中快速获取参数的办法
- SpringMVC从request中获取参数的原理
- 从标签中提取参数(数组)
- 如何从请求参数中来设置managed bean的属性?
- JS直接从REQUEST中获得参数
- js移动表格数据和给表格数字排序
- 数据库连接池之c3p0
- HTML5无刷新修改URL:利用 History API 无刷新更改地址栏
- bom
- 二、stpringMVC mysql+jpa 篇
- Flask中如何简便从Request中提取请求的参数值
- 百度地图搜索(三)
- 倒计时6小时
- Xcode8 missing file 报 ”xx“is missing from working copy 警告
- 三维重建(二)Sift特征提取与匹配
- APICloud之window与frame的区别
- win7 32/64位系统下编译ardupilot源码
- HDU 5303 delicious apples(贪心+离散化)好题
- MyBatis中如何通过继承SqlSessionDaoSupport来编写DAO(一)