httpbin的使用

这篇具有很好参考价值的文章主要介绍了httpbin的使用。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

在学习过程中我们想知道我们发送处的http格式是什么样子的,是否符合我们的要求,寻找一个这样的工具,满足验证测试需要。

Httpbin服务可以满足查看我发出去的请求到底是什么样子的。你需要查看请求中的那部分信息,就调用什么样的接口即可。


1、Httpbin介绍

Httpbin是一个使用Python + Flask编写的HTTP Request & Response Service,该服务主要用于测试 HTTP库,你可以向他发送请求,然后他会按照指定的规则将你的请求返回(查看你所发送请求中的信息)。
Httpbin支持HTTP/HTTPS请求,支持所有的HTTP动词,能测试HTTP请求和响应的各种信息,比如 cookie、ip、headers 和登录验证等。能模拟302跳转乃至302跳转的次数,还可以返回一个HTML文件或一个XML文件或一个图片文件(还支持指定返回图片的格式)。
Httpbin官方网站:http://httpbin.org/
Httpbin开源地址:https://github.com/postmanlabs/httpbin

2、Httpbin部署[linux下部署]

Httpbin是部署在国外的,考虑到有时无法访问的情况,也是可以自己在本地搭建部署,非常简单。
这样自己部署Httpbin的方式,可以不用和外部的服务器交互就可以进行Http业务调试。
(1)通过pip工具安装
需要分别安装Httpbinguicornguicorn是一个wsgi http服务器,用来启动Httpbin服务。

# 进入cmd命令行,执行如下命令:
# 安装Httpbin与guicorn
pip install gunicorn
pip install httpbin

# 执行如下命令启动服务:
gunicorn httpbin:app  

注意:这种方式在Windows系统下不能使用,报错ImportError: No module named 'fcntl'

(2).linux下的docker下运行


Run locally: $ docker run -p 80:80 kennethreitz/httpbin

3.windows下部署使用

【目前没有测试成功!】

安装多个文件包,各种依赖不兼容!


4、Httpbin访问方式

Httpbin的使用方法非常简单,你只需要把请求的地址修改为httpbin.org即可。
比如:GET请求:http://httpbin.org/get
如果使用本地部署的Httpbin服务,访问:http://127.0.0.1:[自己设置的端口号]

5、Httpbin常用调试接口

常用接口列表:

Endpoint Descirption
/ip 返回请求者的IP地址。
/user-agent 返回传入请求的User-Agent参数。
/headers 返回传入请求的请求头参数。
/get GET请求的提交参数。
/post POST请求的提交参数。
/patch PATCH请求的提交参数。
/put PUT请求的提交参数。
/delete DELETE请求的提交参数。

实例:

1.返回你使用的访问网络的电脑的ip地址:

浏览器中输入:

https://httpbin.org/ip

结果:返回一个json数据--->你本机访问网络的地址

{
  "origin": "16.41.121.6"
}

2.https://httpbin.org/headers

浏览器中输入:

返回的是“头信息”

{
  "headers": {
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", 
    "Accept-Encoding": "gzip, deflate, br", 
    "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2", 
    "Host": "httpbin.org", 
    "Sec-Fetch-Dest": "document", 
    "Sec-Fetch-Mode": "navigate", 
    "Sec-Fetch-Site": "none", 
    "Sec-Fetch-User": "?1", 
    "Upgrade-Insecure-Requests": "1", 
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0", 
    "X-Amzn-Trace-Id": "Root=1-63942f9e-1b3e2a254528a0107fb283e5"
  }
}

 3.调用接口,返回GET请求的详细信息

https://httpbin.org/get?name=tom&pwd=123456
{
  "args": {
    "name": "tom", 
    "pwd": "123456"
  }, 
  "headers": {
    "Accept": "text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,*/*;q=0.8", 
    "Accept-Encoding": "gzip, deflate, br", 
    "Accept-Language": "zh-CN,zh;q=0.8,zh-TW;q=0.7,zh-HK;q=0.5,en-US;q=0.3,en;q=0.2", 
    "Host": "httpbin.org", 
    "Sec-Fetch-Dest": "document", 
    "Sec-Fetch-Mode": "navigate", 
    "Sec-Fetch-Site": "none", 
    "Sec-Fetch-User": "?1", 
    "Upgrade-Insecure-Requests": "1", 
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:107.0) Gecko/20100101 Firefox/107.0", 
    "X-Amzn-Trace-Id": "Root=1-63943038-7038ccaf66e060b07d63c09a"
  }, 
  "origin": "11.12.112.67", 
  "url": "https://httpbin.org/get?name=tom&pwd=123456"
}

6.数据测试验证

1.postman中验证,直接在post位置输入

https://httpbin.org/post

 获取数据内容如下:

httpbin的使用

 文章来源地址https://www.toymoban.com/news/detail-482502.html

2.https://httpbin.org/post?name=tom&pwd=99999

 参数的请求“?name=tom&pwd=99999”

httpbin的使用

 3.在请求头中添加数据,key,value9

httpbin的使用

 结果:httpbin的使用

 

4.在请求体body中添加数据【raw-json数据】,添加的

{

    "name":"zhangsan",

    "age":21,

    "address":"beijing"

}

httpbin的使用

 5.form表单的使用

https://httpbin.org/forms/post

httpbin的使用 

 

到了这里,关于httpbin的使用的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包