Skip to main content
[![Build Status](https://travis-ci.org/yohanboniface/falcon-multipart.svg?branch=master)](https://travis-ci.org/yohanboniface/falcon-multipart)

# Parse multipart/form-data requests in Falcon

## Install

pip install falcon-multipart


## Usage

Add the `MultipartMiddleware` to your api middlewares:

from falcon_multipart.middleware import MultipartMiddleware

api = falcon.API(middleware=[MultipartMiddleware()])

This will parse any `multipart/form-data` incoming request, and put the keys
in `req._params`, including files, so you get the field as other params.


## Dealing with files

Files will be available as [`cgi.FieldStorage`](https://docs.python.org/3/library/cgi.html),
with following main parameters:

- `file`: act as a python file, you can call `read()` on it, and you will
retrieve content (as *bytes*)
- `filename`: the filename, if given
- `value`: the file content in *bytes*
- `type`: the content-type, or None if not specified
- `disposition`: content-disposition, or None if not specified


## Example

# Say you have a form with those fields:
# - title => a string
# - image => an image file

def on_post(req, resp, **kwargs):
title = req.get_param('title')
image = req.get_param('image')
# Read image as binary
raw = image.file.read()
# Retrieve filename
filename = image.filename

Release files for falcon-multipart 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for falcon-multipart 0.2.0
File Size Uploaded
falcon-multipart-0.2.0.tar.gz 3.3 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for falcon-multipart 0.2.0
File Interpreter ABI Platform
falcon_multipart-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 8.5 kB

Release files / falcon-multipart-0.2.0.tar.gz

Download URL falcon-multipart-0.2.0.tar.gz
Size 3.3 kB
Tags Source
SHA-256 checksum
How to use checksums
9ae73fdddd94299f2cb181b8f1e8ab17d3ce182daabbb11ce862f0bd471a3d1d
BLAKE2b-256 checksum
How to use checksums
e0a8cc15f2ff95395859ffc9fedbbcc7731097716a4e4301c0476e24ac5f43c8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release files / falcon_multipart-0.2.0-py3-none-any.whl

Download URL falcon_multipart-0.2.0-py3-none-any.whl
Size 5.2 kB
Tags Python 3
SHA-256 checksum
How to use checksums
134c88c2b50b343d93e1b0f2c73e0ce07a89928658af71abc9629f42331a189d
BLAKE2b-256 checksum
How to use checksums
e1a2e50ffc3101ed6b91d1edc63b3586c424ef8071e1ef0ef7dcb8745e65fc14
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.2.0 This release

2 release files

0.1.0

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page