利用Charles测试webhook
在云服务的测试过程中经常会碰到webhook,例如:支付成功、退款成功、用户注册成功、订单状态改变等events,这个时候写个简单的http服务也能满足,但是直接用charles更简单~
1.通常云平台的接口都可以设置相关webhook
的URL
,更高级的时候还会设置headers
2.在URL中设置charles
的http proxy
的地址以及端口号
3.当相应events
触发webhook
时,charles会收到相应请求,但是这些请求不会得到任何响应,服务端就会重复多次去请求,尝试拿到响应
4.charles中有Map Local
&BlackList
两个工具,一个是用来重定向本地文件的,另一个则是加入黑名单,返回相应错误状态码
5.Map Local
返回的状态码始终是200
,它不会根据你本地返回的文件内容来改变的(本地文件可以通过其他正常的请求保存下来,又或者自己写一个response文件)
6.BlackList
可以在两种返回项中任选其一,一种是Drop connection
,Return 403 response
,这两种情况下,webhook服务都会视为失败
7.webhook服务一般都有失败之后重复尝试的机制,所有当webhook
一直是在blacklist
中的话,webhook
会一直重复尝试,只当重复机制结束或者是我们人为的把webhook
请求从blacklist
转移到Map Local
中