</a>
</p>
+<p align="center">— ⭐️ —</p>
+
+Starlette is a small library for
+
```python
from starlette import Response
await response(receive, send)
```
+<p align="center">— ⭐️ —</p>
+
## Requests
Starlette includes a `Request` class that gives you a nicer interface onto
The request method is accessed as `request.method`.
-### URL
+#### URL
The request URL is accessed as `request.url`.
For example: `request.url.path`, `request.url.port`, `request.url.scheme`.
-### Headers
+#### Headers
Headers are exposed as an immutable, case-insensitive, multi-dict.
For example: `request.headers['content-type']`
-### Query Parameters
+#### Query Parameters
Headers are exposed as an immutable multi-dict.
For example: `request.query_params['abc']`
-### Body
+#### Body
There are two interfaces for returning the body of the request:
The request body, parsed as JSON: `await request.json()`
+<p align="center">— ⭐️ —</p>
+
## Test Client
The test client allows you to make requests against your ASGI application,
assert response.status_code == 200
```
+<p align="center">— ⭐️ —</p>
+
## Decorators
The `asgi_application` decorator turns an `async` function into an ASGI application.
---
-<p align="center"><i>API Star is <a href="https://github.com/tomchristie/apistar/blob/master/LICENSE.md">BSD licensed</a> code.<br/>Designed & built in Brighton, England.</i><br/>— ⭐️ —</p>
+<p align="center"><i>API Star is <a href="https://github.com/tomchristie/apistar/blob/master/LICENSE.md">BSD licensed</a> code.<br/>Designed & built in Brighton, England.</i></p>