--- id: webob version: "1.8.11" license: MIT license_treatment: permissive maintenance: active --- # WebOb — WSGI request and response object License: permissive · Maintenance: active · Downloads: 6.4M/mo ## 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 above — verify before relying. WebOb provides request and response objects that wrap WSGI environments, offering convenient parsing and construction of HTTP requests and responses. 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 pip install webob uv add webob poetry add webob ## Installing WebOb 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. 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' Requires legacy-cgi on Python 3.13+; verify availability in your target environment. 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 - License: MIT (permissive) - Python support: supports_current - Install friction: low - Maintenance: active - Downloads: 6.4M/month (top 5,000 on PyPI) - Known vulnerabilities: none known ## Tags wsgi request response objects, http request parsing, wsgi application framework, http header manipulation, web request utilities, wsgi middleware, http response building, wsgi, http-utilities [View on SkillFed](https://skillfed.io/packages/webob) · [View on PyPI](https://pypi.org/project/webob/)