Skip to main content

Create easy REST APIs with Flask

Project description

[![build status](https://travis-ci.org/jidn/flask-resteasy.svg?branch=master)](https://travis-ci.org/jidn/flask-resteasy.svg?branch=masterp)
![version](http://img.shields.io/pypi/v/flask-resteasy.svg)
![license](http://img.shields.io/pypi/l/flask-resteasy.svg)
[![coverage](https://coveralls.io/repos/github/jidn/flask-resteasy/badge.svg?branch=master)](https://coveralls.io/github/jidn/flask-resteasy?branch=master)
![downloads](http://img.shields.io/pypi/dm/flask-resteasy.svg)

# Flask-RESTeasy

It starts with an itch. I was using Flask-RESTful but I soon started
having to work around it with request parsing and output fields caused
errors. I got frustrated. I loved the project, but it was doing more
than what I wanted it to do.

I just wanted something to ease the setup and binding of flask MethodViews
for handling JSON REST APIs. The rest can be handled by other packages
dedicated to their tasks. I kept the basic resource handling for both
apps and blueprints and removed the rest: request parsing, output fields,
authentication, and static error handling.

I wanted something simple in the way Flask was simple. This is my
attempt at making it so. If you have seen Flask-RESTful, this will
look very familiar.

# Install

For install you can use pip:

```console
$ pip install flask_resteasy
```

# QuickStart
```python
from flask import Flask
from flask.ext import resteasy

app = Flask(__name__)
api = resteasy.Api(app)

@api.resource('/')
class HelloWorld(resteasy.Resource):
def get(self):
return {'msg': 'Hello world'}

def delete(self):
return {'msg': 'Sorry Dave.'}

if __name__ == '__main__':
app.run(debug=True)
```

Execute that code and you have a running server on port 5000. If you get an error, you probably have something else running on that port. Either stop the other process or change the port in your Flask app.

Now either check with a browser, or use the following commands.

```console
$ curl http://localhost:5000
{"msg": "Hello world"}

$ curl http://localhost:5000 -X "DELETE"
{"msg": "Sorry Dave."}
```

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

Flask-RESTeasy-0.0.8.tar.gz (6.9 kB view details)

Uploaded Source

Built Distribution

Flask_RESTeasy-0.0.8-py2-none-any.whl (8.8 kB view details)

Uploaded Python 2

File details

Details for the file Flask-RESTeasy-0.0.8.tar.gz.

File metadata

File hashes

Hashes for Flask-RESTeasy-0.0.8.tar.gz
Algorithm Hash digest
SHA256 5bfd8e91b37ea4a8e4554a17f6e592ba5999097119d50f2ba827ee0e1fe515d2
MD5 b38f15e2c4121c50e7af4acb2e34a72b
BLAKE2b-256 5f04838bd54378a8434ae22ac0cec082883982d7e208111e5aebf66d5cd20cd2

See more details on using hashes here.

File details

Details for the file Flask_RESTeasy-0.0.8-py2-none-any.whl.

File metadata

File hashes

Hashes for Flask_RESTeasy-0.0.8-py2-none-any.whl
Algorithm Hash digest
SHA256 c08c80d6328cd26eef60b1b04f13c57187d7781ed45310cbfd935c64346b892d
MD5 5787ecf4dff5fa8dd877e508df038933
BLAKE2b-256 5fd61f182ed21da4504e96831fed4ebaa14fed79e41a561b58ca6931237ecf70

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page