README.rst
1*******
2webargs
3*******
4
5.. image:: https://badgen.net/pypi/v/webargs
6 :target: https://pypi.org/project/webargs/
7 :alt: PyPI version
8
9.. image:: https://dev.azure.com/sloria/sloria/_apis/build/status/marshmallow-code.webargs?branchName=dev
10 :target: https://dev.azure.com/sloria/sloria/_build/latest?definitionId=6&branchName=dev
11 :alt: Build status
12
13.. image:: https://readthedocs.org/projects/webargs/badge/
14 :target: https://webargs.readthedocs.io/
15 :alt: Documentation
16
17.. image:: https://badgen.net/badge/marshmallow/3
18 :target: https://marshmallow.readthedocs.io/en/latest/upgrading.html
19 :alt: marshmallow 3 compatible
20
21.. image:: https://badgen.net/badge/code%20style/black/000
22 :target: https://github.com/ambv/black
23 :alt: code style: black
24
25Homepage: https://webargs.readthedocs.io/
26
27webargs is a Python library for parsing and validating HTTP request objects, with built-in support for popular web frameworks, including Flask, Django, Bottle, Tornado, Pyramid, Falcon, and aiohttp.
28
29.. code-block:: python
30
31 from flask import Flask
32 from webargs import fields
33 from webargs.flaskparser import use_args
34
35 app = Flask(__name__)
36
37
38 @app.route("/")
39 @use_args({"name": fields.Str(required=True)}, location="query")
40 def index(args):
41 return "Hello " + args["name"]
42
43
44 if __name__ == "__main__":
45 app.run()
46
47 # curl http://localhost:5000/\?name\='World'
48 # Hello World
49
50Install
51=======
52
53::
54
55 pip install -U webargs
56
57webargs supports Python >= 3.6.
58
59
60Documentation
61=============
62
63Full documentation is available at https://webargs.readthedocs.io/.
64
65Support webargs
66===============
67
68webargs is maintained by a group of
69`volunteers <https://webargs.readthedocs.io/en/latest/authors.html>`_.
70If you'd like to support the future of the project, please consider
71contributing to our Open Collective:
72
73.. image:: https://opencollective.com/marshmallow/donate/button.png
74 :target: https://opencollective.com/marshmallow
75 :width: 200
76 :alt: Donate to our collective
77
78Professional Support
79====================
80
81Professionally-supported webargs is available through the
82`Tidelift Subscription <https://tidelift.com/subscription/pkg/pypi-webargs?utm_source=pypi-webargs&utm_medium=referral&utm_campaign=readme>`_.
83
84Tidelift gives software development teams a single source for purchasing and maintaining their software,
85with professional-grade assurances from the experts who know it best,
86while seamlessly integrating with existing tools. [`Get professional support`_]
87
88.. _`Get professional support`: https://tidelift.com/subscription/pkg/pypi-webargs?utm_source=pypi-webargs&utm_medium=referral&utm_campaign=readme
89
90.. image:: https://user-images.githubusercontent.com/2379650/45126032-50b69880-b13f-11e8-9c2c-abd16c433495.png
91 :target: https://tidelift.com/subscription/pkg/pypi-webargs?utm_source=pypi-webargs&utm_medium=referral&utm_campaign=readme
92 :alt: Get supported marshmallow with Tidelift
93
94Security Contact Information
95============================
96
97To report a security vulnerability, please use the
98`Tidelift security contact <https://tidelift.com/security>`_.
99Tidelift will coordinate the fix and disclosure.
100
101Project Links
102=============
103
104- Docs: https://webargs.readthedocs.io/
105- Changelog: https://webargs.readthedocs.io/en/latest/changelog.html
106- Contributing Guidelines: https://webargs.readthedocs.io/en/latest/contributing.html
107- PyPI: https://pypi.python.org/pypi/webargs
108- Issues: https://github.com/marshmallow-code/webargs/issues
109- Ecosystem / related packages: https://github.com/marshmallow-code/webargs/wiki/Ecosystem
110
111
112License
113=======
114
115MIT licensed. See the `LICENSE <https://github.com/marshmallow-code/webargs/blob/dev/LICENSE>`_ file for more details.
116