调一个POST接口,接具参数里带了个JSON body,口测返回一直说字段缺失。试工我盯着屏幕看了三遍,接具字段名没错,口测格式也没错。试工最后把请求原样复制到getpost里发了一次,接具才发现是口测Content-Type没设对——我那边默认发了form-urlencoded,后端压根没解析。试工这种破事,接具浏览器开发者工具也能干,口测但每次都要开F12、试工切到Network、接具找请求、口测右键Copy as cURL,试工再贴到终端里改,太绕。getpost这类工具解决的就是这个:把HTTP请求的构造和发送从代码里拎出来,变成一个可以随手改、随手发、随手看结果的东西。
它的核心界面就三块:上面填URL和选方法,中间填参数,下面看响应。方法下拉里GET、POST、PUT、DELETE、PATCH都有,选POST的时候,Body区域会亮起来,让你选raw、form-data、x-www-form-urlencoded这些类型。raw下面还能选JSON、XML、Text。这个设计不新鲜,Postman早就这么干了,但getpost轻,打开就能用,不用登录不用同步不用等它加载一堆团队协作的模块。
我拿它测过一个内部接口,POST /api/v1/order/create,body是JSON。在raw里贴进去,点发送,响应区直接返回格式化后的JSON,状态码200,耗时43ms。改一个字段的值再发,看返回变化。整个过程不用切窗口,不用等编译,不用看日志。这种即时反馈在调参数校验逻辑的时候特别有用——你改一个字段,立刻知道后端是拒了还是收了。
GET请求更简单,参数直接拼在URL后面,或者填在Params表格里。表格里填key-value,它会自动帮你拼成?key1=value1&key2=value2。有个细节:如果value里有中文或特殊字符,它会自动做URL编码。这个功能看着小,但手动拼的时候经常忘,一忘就出400。
Headers区域是我用得最多的地方。Authorization、Content-Type、Accept、自定义的X-Request-Id,都在这里加。有一次调一个需要签名的接口,签名放在header里,我把时间戳和签名算好填进去,点发送,返回401。查了半天,发现是header的key大小写问题——工具里填的是X-Sign,后端读的是x-sign,有些框架对header名大小写敏感。改过来就通了。这种问题在代码里调,得改代码、重启服务、再看日志,在getpost里就是改一个字母的事。
响应区除了看body,还能看headers和cookies。有一次接口返回302重定向,body是空的,我一开始以为接口挂了。切到headers一看,Location字段指向了另一个地址。工具默认不跟随重定向,所以看到的是原始响应。这个行为可以配置,但默认不跟随反而让我看清了服务端到底在干什么。
说个实际场景。前端跟我说某个列表接口返回的数据不对,我让他把请求发我看。他截了个图,参数都在图里。我把图里的URL和参数敲进getpost,发出去,返回的数据跟他截图里的一样。然后我改了一个分页参数,再发,数据变了。问题定位在参数传递上,不是接口逻辑。整个过程五分钟,没碰代码,没重启服务。
getpost这类工具不是银弹。复杂的认证流程、文件上传、WebSocket、GraphQL,它处理起来不如Postman或Insomnia顺手。但日常调REST接口,尤其是快速验证一个想法、复现一个bug、对比两次请求的差异,它够用了。工具的价值不在于功能多全,在于你打开它的时候不用想“我要怎么用它”,直接填、直接发、直接看。调接口这件事,越少步骤越好。
顶: 637踩: 83






评论专区