Skip to content
A friendly library for parsing HTTP request arguments, with built-in support for popular web frameworks, including Flask, Django, Bottle, Tornado, Pyramid, webapp2, Falcon, and aiohttp.
Python
Branch: dev
Clone or download
Pull request Compare This branch is 207 commits behind marshmallow-code:dev.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
docs
examples
tests
webargs
.gitignore
.pre-commit-config.yaml
.readthedocs.yml
.travis.yml
AUTHORS.rst
CHANGELOG.rst
CONTRIBUTING.rst
LICENSE
MANIFEST.in
NOTICE
README.rst
dev-requirements-py3.txt
dev-requirements.txt
setup.cfg
setup.py
tasks.py
tox.ini

README.rst

webargs

https://travis-ci.org/sloria/webargs.svg?branch=pypi marshmallow 3 compatible code style: black

Homepage: https://webargs.readthedocs.io/

webargs is a Python library for parsing and validating HTTP request arguments, with built-in support for popular web frameworks, including Flask, Django, Bottle, Tornado, Pyramid, webapp2, Falcon, and aiohttp.

from flask import Flask
from webargs import fields
from webargs.flaskparser import use_args

app = Flask(__name__)

hello_args = {"name": fields.Str(required=True)}


@app.route("/")
@use_args(hello_args)
def index(args):
    return "Hello " + args["name"]


if __name__ == "__main__":
    app.run()

# curl http://localhost:5000/\?name\='World'
# Hello World

Install

pip install -U webargs

webargs supports Python >= 2.7 or >= 3.5.

Documentation

Full documentation is available at https://webargs.readthedocs.io/.

Project Links

License

MIT licensed. See the LICENSE file for more details.

You can’t perform that action at this time.