$npx skillfedfor your agent

WebOb

WSGI request and response object

Worth itPyPI WSGIReleased Aug 20266.4M downloads / moMITPure Python

Decision gist · record as of 2026-08-14

pure-Python wheel — webob-1.8.11-py2.py3-none-any.whl
v1.8.11 · released 2026-08-02 · Python !=3.0.*,!=3.1.*,!=3.2.*,>=2.7 · 1 runtime deps: legacy-cgi

Yes. WebOb is a stable, actively maintained library with low install friction and permissive licensing. Recent security fixes demonstrate ongoing attention to correctness. Install it if you're building or working with WSGI applications and need convenient request/response handling—it's a standard choice in the Python web ecosystem.AI-flagged interpretation of the facts on this page — verify before relying

Before you install

  • Requires legacy-cgi on Python 3.13+; verify availability in your target environment.
  • Low install friction with a single pure-Python wheel dependency.
  • Actively maintained with recent security fixes; status is active and latest release was 12 days ago.

License · maintenance · safety

MIT (permissive) — MIT license is permissive, allowing commercial and private use with minimal restrictions.

last release 2026-08-02 (12 days)

0 known vulnerabilities (OSV.dev, 2026-08-14) · 6,426,596 downloads/mo, #1,913 on PyPI

Verify before relying

pip install webob

from webob import Request, Response

req = Request.blank('/path')
resp = Response('Hello World')
resp.headers['Content-Type'] = 'text/plain'
  • Whether Python 2.7 support is still practical given its EOL status and whether the package's actual test coverage reflects modern Python versions.
  • Current state of the legacy-cgi dependency for Python 3.13+ and whether it introduces any compatibility concerns.
Same gist for agents: .md · .json

What it is and what it does

WebOb is a mature library that wraps WSGI request environments and response objects to provide a more convenient interface for HTTP handling. It lets you read and write request and response data—parsing headers, query strings, cookies, and form data—without directly manipulating the raw WSGI environ dictionary. The library is bidirectional: you can use it to parse incoming HTTP requests or to construct outgoing responses, making it useful both in WSGI applications and for creating HTTP requests programmatically.

The package is actively maintained by the Pylons Project and has recently addressed multiple security issues related to URL handling and open redirects. It supports a range of Python versions and is designed to work with any WSGI-compliant framework or middleware.

Use it for

  • Parse HTTP request headers, query parameters, and form data in a WSGI application without manual environ manipulation.
  • Construct HTTP responses with proper headers, cookies, and content negotiation in web frameworks.
  • Build HTTP requests programmatically for testing or client-side use.
  • Handle cookie management and SameSite attribute configuration in web applications.
  • Normalize and validate Location headers in redirect responses to prevent open redirect vulnerabilities.

Worth the install?

AI-flagged interpretation of the facts on this page. Verify before relying on it.

Worth it

Yes.

WebOb is a stable, actively maintained library with low install friction and permissive licensing. Recent security fixes demonstrate ongoing attention to correctness. Install it if you're building or working with WSGI applications and need convenient request/response handling—it's a standard choice in the Python web ecosystem.

Install

webob on PyPI

Before you install

Low install friction with a single pure-Python wheel dependency. Actively maintained with recent security fixes; status is active and latest release was 12 days ago.

Requires legacy-cgi on Python 3.13+; verify availability in your target environment.

License in practice

MIT license is permissive, allowing commercial and private use with minimal restrictions.

Quickstart

pip install webob

from webob import Request, Response

req = Request.blank('/path')
resp = Response('Hello World')
resp.headers['Content-Type'] = 'text/plain'

Verify before relying

  • Whether Python 2.7 support is still practical given its EOL status and whether the package's actual test coverage reflects modern Python versions.
  • Current state of the legacy-cgi dependency for Python 3.13+ and whether it introduces any compatibility concerns.

Package facts

LicenseMIT permissive
Python supportSupports the current Python release !=3.0.*,!=3.1.*,!=3.2.*,>=2.7
Install frictionLow. Pure-Python wheel
Runtime dependencies
1 package
legacy-cgi
MaintenanceActively maintained 12 days since the last release
First released
Downloads6,426,596 / month, #1,913 on PyPI 30-day window, as of 2026-08-14
Known vulnerabilitiesNone known OSV.dev, checked 2026-08-14
Classifiers
Development Status :: 6 - MatureIntended Audience :: DevelopersLicense :: OSI Approved :: MIT LicenseProgramming Language :: Python :: 2.7Programming Language :: Python :: 3.4Programming Language :: Python :: 3.5Programming Language :: Python :: 3.6Programming Language :: Python :: 3.7Programming Language :: Python :: Implementation :: CPythonProgramming Language :: Python :: Implementation :: PyPyTopic :: Internet :: WWW/HTTP :: WSGITopic :: Internet :: WWW/HTTP :: WSGI :: ApplicationTopic :: Internet :: WWW/HTTP :: WSGI :: Middleware

Evidence: webob-1.8.11-py2.py3-none-any.whl

Tags

Capabilities
wsgi request response objectshttp request parsingwsgi application frameworkhttp header manipulationweb request utilitieswsgi middlewarehttp response building
Topics
wsgihttp-utilities
PyPI keywords
wsgirequestwebhttp

Let your AI agent find packages like this

Example. Real query, live index.

You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.

wish › “wsgi request response objects”

  • WebObWebOb provides request and response objects that wrap WSGI…
  • WerkzeugWerkzeug is a WSGI utility library providing request/response…
  • oslo.middlewareoslo.middleware provides WSGI middleware components for intercepting…

Give your agent the search over MCP, or paste the wish link into any chat.

More WSGI packages

Werkzeug Worth it
PyPI · Application Frameworks · released Apr 2026

Werkzeug is a WSGI utility library providing request/response objects, URL routing, an interactive debugger, HTTP utilities, and a development server for building web applications.

BSD-3-Clausepure Python · 3.9+
268.1Mdownloads / mo
Flask Worth it
PyPI · Application Frameworks · released Feb 2026

Flask is a lightweight WSGI web application framework for building web applications in Python, from simple single-page sites to complex multi-route applications.

BSD-3-Clausepure Python · 3.9+
211.4Mdownloads / mo
gunicorn Worth it
PyPI · Python Modules · released May 2026

Gunicorn is a WSGI and ASGI HTTP server for Unix that runs Python web applications with a pre-fork worker model, supporting frameworks like Django, Flask, FastAPI, and Starlette.

Install it if you are deploying a WSGI or ASGI application to production on Unix.

MITpure Python · 3.10+
136.5Mdownloads / mo
Django Worth it
PyPI · Python Modules · released Aug 2026

Django is a high-level Python web framework for building database-backed web applications with an integrated ORM, admin interface, and form handling.

Install it if you are building a web application that needs ORM, admin interface, authentication, or form handling.

BSD-3-Clausepure Python · 3.12+
55.4Mdownloads / mo
Flask-WTF Worth it
PyPI · Application Frameworks · released Apr 2026

Flask-WTF integrates WTForms with Flask to handle form rendering, validation, and CSRF protection in web applications.

Install it if you are building forms in Flask.

BSD-3-Clausepure Python · 3.10+
20.2Mdownloads / mo
Flask-Session With conditions
PyPI · WWW/HTTP · released Mar 2024

Flask-Session adds server-side session storage to Flask applications, supporting multiple backends including Redis, Memcached, FileSystem, MongoDB, and SQLAlchemy.

However, the aging maintenance status means you should verify compatibility with your target Flask and Python versions before committing to production use.

BSD-3-Clausepure Python · 3.8+aging
15.2Mdownloads / mo

See also Paste · peppercorn · WSGIProxy2 · pyramid · cookies · django-cors-headers · repoze.who · PasteDeploy · apig-wsgi · oslo.middleware