HTTP请求和响应服务
项目描述
httpbin(1):HTTP 请求与响应服务
这是一个原始 httpbin 项目的分支,原始项目位于 https://github.com/postmanlabs/httpbin
为什么要分支?我们无法联系到 postmanlabs 的人来维护原始项目,而 httpbin 被用于 python 生态系统中的其他包,如 pytest-httpbin,后者又被 requests 这样的包所使用,因此我们创建了此分支。这意味着 httpbin.org 实际上并不由这个仓库支持,而是由 httpbin 包 支持。很困惑吗?认识 postmanlabs 的人吗?联系我。
httpbin 是 Kenneth Reitz 的项目。
下载和运行
docker pull ghcr.io/psf/httpbin
docker run -p 80:8080 ghcr.io/psf/httpbin
将 httpbin
作为库使用
httpbin
可以通过将 httpbin
添加为依赖项来在您自己的项目中使用。
手动构建最新的 Docker 镜像
要自己构建 Docker 镜像,从 发布页面 下载最新的 Dockerfile
和 requirements.txt
文件。将两个文件存储在同一文件夹中,然后运行
docker build --build-arg APP_VERSION=<your-version> [other docker args] .
或者,您可以使用 pip-compile 重新生成一个新的 requirements.txt
文件。在这种情况下,请注意,代码尚未针对这些依赖项进行测试,我们无法保证这样的镜像可以无错误运行。
APP_VERSION
将存储在 docker-label 中。默认值是一个空字符串。
维护
"额外" 依赖项
项目提供了两个 "额外" 依赖项,包含特定用例中应安装的依赖项。在将 httpbin
作为依赖项使用时,除非 明确 请求,例如 httpbin[mainapp]
,否则它们将不会包含在内。
mainapp
:包含运行httpbin
作为独立应用程序所需的所有内容。这由 Docker 镜像使用。test
:包含用于单元测试的附加依赖项。这仅在开发期间使用。
发布新版本
通过 GitHub Actions 自动化发布了(参见 #17)。
对于 pypi 发布,项目使用通过 官方 GitHub 操作 的 受信任发布。
对于 docker-hub 上的发布(当在 CI 中启用时),需要以下两个机密信息
DOCKERHUB_USERNAME
DOCKERHUB_TOKEN
当提交带有 release-
标签时触发发布(例如 release-0.10.0
)。
变更日志
- 0.10.2:
- 添加了对 Flask 3.0 的支持
- 0.10.1:
- 感谢 @exhuma 和 @mgorny 做了大量的整理工作,包括依赖项清理、镜像构建和包装改进
- 0.10.0:
- 使用 HTTPBIN_PORT 覆盖 Docker 镜像端口
- 许多代码腐化的修复,感谢 @mgorny 和 @tjni
- 0.9.2:???(从未作为包发布;似乎是在 postman 内部使用)
- 0.7.0: ???
- 0.6.2: ???
- 0.6.0: ???
- 0.5.0
- 允许 /redirect-to 与多种方法一起工作
- 允许 MD5 或 SHA-256 作为 HTTP Digest 认证的算法
- 对 /drip 设置 10MB 限制
- 0.4.1:为 /delay 端点添加了浮点数支持
- 0.4.0:新的 /image/svg 端点,添加部署到 Heroku 的按钮,添加 406 响应到 /image,并且对于流端点不总是发出传输编码头。
- 0.3.0:包括 /range 端点在内的许多新功能,以及大量的错误修复和 /encoding/utf8 端点
- 0.2.0:添加了 XML 端点。还修复了关于 Unicode、CORS 头、摘要认证等方面的几个错误。
- 0.1.2:修复了随机字节端点的一些 Python3 错误,修复了未设置 Content-Type 头时上传文件时出现的错误。
- 0.1.1:在 setup.py 中添加了模板作为数据
- 0.1.0:添加了 Python3 支持,并在 PyPI 上重新发布
正式部署(但已过时)于
参见
项目详情
下载文件
下载适合您平台的文件。如果您不确定选择哪个,请了解有关安装包的更多信息。
源分布
构建分布
httpbin-0.10.2.tar.gz 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 632148698261c8684ea2d2b624cdea845b402b1fe91736e89df886408c6317a9 |
|
MD5 | f7eefe44907a031db3322832945c4349 |
|
BLAKE2b-256 | 6190e2eeeedc96fbfd9345dff0407574b8edb8ff97ad1682ef518bdfaf096dd5 |
httpbin-0.10.2-py2.py3-none-any.whl 的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | 8e28e67f72ead4419977c9f2dba4ce86ce08768ada30ef9a87288527bb925d00 |
|
MD5 | 6c5fbf1c2111ba2e3fe6e8c0cec5d34d |
|
BLAKE2b-256 | 1f2a12e12f8f07070cd12b46c60fd8fd709ff01414830213bfc5153ab527331f |