flask请求参数为flask提供类似rails的http请求参数接口。

Flask-request-params的Python项目详细描述


https://travis-ci.org/bluele/Flask-request-params.svg?branch=master

flask请求参数为flask提供类似rails的http请求参数接口。

支持混合参数(get、post、post-json),Rails Strong_Parameters

文件是here

安装

要安装烧瓶请求参数,只需:

pip install flask-request-params

或者,您可以下载存储库并通过执行以下操作手动安装:

git clone git@github.com:bluele/flask-request-params.git
cd flask-request-params
python setup.py install

示例

有关更多代码,请参见examples

客户端代码

# 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"
}

服务器代码

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)

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java当使用SAST工具时,为什么我们必须为编译语言(例如C/C++)使用“构建包装器”?   从C++调用java   java在键入时重新存储单词   java Magnolia实例化模块类失败   为什么我可以在java的for循环中创建很少的文件对象   netbeans JAVA:将事件创建为单独的程序。。。可能吗?   标准不使用java关键字的目的是什么?   java如何将列表计数与单个整数值进行比较?   编写谓词练习JAVA技能   Java 8中是否有Scala的等价物?   java有人能指出这段代码的错误吗?这是一个卡片重绘程序,但由于某些原因,一些卡片会重复   java使驱动程序“通用”   java如何在Hibernate中删除多个关联而不实际删除对象