httpbin.org 这个网站能测试 HTTP 请求和响应的各种信息,比如 cookie、ip、headers 和登录验证等,且支持 GET、POST 等多种方法,对 web 开发和测试很有帮助。
它用 Python + Flask 编写,是一个开源项目。
官方网站:http://httpbin.org/
Python使用requests库: 复杂的 POST 请求
通常,你想要发送一些编码为表单形式的数据——非常像一个 HTML 表单。要实现这个,只需简单地传递一个字典给 data 参数。
你的数据字典在发出请求时会自动编码为表单形式:
import requests
payload = (('key1', 'value1'), ('key1', 'value2'))
r = requests.post('http://httpbin.org/post', data=payload)
print(r.text)
- 返回值
json
数据
{
"args": {},
"data": "",
"files": {},
"form": {
"key1": [
"value1",
"value2"
]
},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Content-Length": "23",
"Content-Type": "application/x-www-form-urlencoded",
"Host": "httpbin.org",
"User-Agent": "python-requests/2.25.1",
"X-Amzn-Trace-Id": "Root=1-618fd260-75b10ed47a82fac820a8c6da"
},
"json": null,
"origin": "188.212.108.88",
"url": "http://httpbin.org/post"
}
httpbin.org 容器部署
- 使用官方版,比较占用空间,容器大小534M
- 使用
simonkowallik/httpbin-alpine
镜像只需要 100M
docker run --name httpbin --restart=always -d -p 80:80 simonkowallik/httpbin-alpine
docker run --name httpbin --restart=always -d -p 80:80 kennethreitz/httpbin
REPOSITORY TAG IMAGE ID CREATED SIZE
simonkowallik/httpbin-alpine latest a7befd1a1b0e 9 months ago 99.6MB
kennethreitz/httpbin latest b138b9264903 3 years ago 534MB
Python使用requests库 访问本地网站测试 HTTP 请求和响应的各种信息
>>> r = requests.post('http://192.168.1.150/post', data=payload)
>>> print(r.text)
{
"args": {},
"data": "",
"files": {},
"form": {
"key1": [
"value1",
"value2"
]
},
"headers": {
"Accept": "*/*",
"Accept-Encoding": "gzip, deflate",
"Connection": "keep-alive",
"Content-Length": "23",
"Content-Type": "application/x-www-form-urlencoded",
"Host": "192.168.1.150",
"User-Agent": "python-requests/2.25.1"
},
"json": null,
"origin": "192.168.1.121",
"url": "http://192.168.1.150/post"
}
B站频道 https://space.bilibili.com/320303690/channel/index Xshell_Docker常用命令和容器模版使用 https://www.bilibili.com/video/BV1Dv411375p Oracl…
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END
喜欢就支持一下吧
请登录后发表评论
注册