Flask-request-params provides Rails-like interface to HTTP Request Parameters for Flask.
Project description
Flask-request-params provides Rails-like interface to HTTP Request Parameters for Flask.
Supports mixed parameters(GET, POST, POST-JSON), Rails Strong_Parameters.
Documents are here.
Installation
To install Flask-request-params, simply:
pip install flask-request-params
Or alternatively, you can download the repository and install manually by doing:
git clone git@github.com:bluele/flask-request-params.git cd flask-request-params python setup.py install
Examples
See examples for more code.
Client code
# support hash type $ 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" }
Server code
from flask import Flask, request, render_template, jsonify from flask_request_params import bind_request_params app = Flask(__name__) app.secret_key = 'secret' # bind rails like params to request.params app.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:5000 app.run(debug=True)
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
File details
Details for the file Flask-request-params-0.3.0.tar.gz
.
File metadata
- Download URL: Flask-request-params-0.3.0.tar.gz
- Upload date:
- Size: 4.2 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0e15f8999049c8d1a2dcded9a6dbb7ffc731fedbdcb5ee1eba12af4800a2b905 |
|
MD5 | 9c3819a8d12b4c53d702d444367fe51e |
|
BLAKE2b-256 | 3314f41ab27df8d0c59ddfe5063a5bdfcb687174e7573eac62ded2f758b7447f |
File details
Details for the file Flask_request_params-0.3.0-py2-none-any.whl
.
File metadata
- Download URL: Flask_request_params-0.3.0-py2-none-any.whl
- Upload date:
- Size: 7.0 kB
- Tags: Python 2
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | e4117b69cc7ab603e99491b3bca31471c1bba90d0f5a078c513ee00926de00b4 |
|
MD5 | 7b022b03460d3232d46c5a9548d86a21 |
|
BLAKE2b-256 | f6ed5fe85e75dd20e880bc54b8119c7403cc2f7e5f95e09be2e6169b951ab88c |