feign验签不通过,但是postman没问题

测试一个外部api的时候发现,同样的签名方法和payload,放在postman请求完全没问题,curl也能通过,但是到了feign就签名错误。

百思不得其解,后来发现了问题。

计算签名的时候,payload使用的格式是

java 复制代码
{"enterpriseId": "576588586871871450"}

但是,在feign传参数的时候,因为body是json,会进行序列化,变成

java 复制代码
{
    "enterpriseId": "576588586871871450"
}

加入了换行和缩进,类似于postman里边的beautify一键格式化。

实测,beautify之后postman也验签不通过了。

而feign是@Headers这种指定header而不是拦截器的方式,计算签名用的是jsonObject,所以导致二者对不上,签名不通过。

正确的做法就应该是,feign的计算签名这些都通过拦截器来实现,从拦截器里边取出来payload或者body。这样才能保证计算签名时候使用的数据格式和feign传输的完全一样。

相关推荐
辣香牛肉面5 小时前
Wireshark v4.6.2 开源免费网络嗅探抓包工具中文便携版
网络·测试工具·wireshark
may_一一1 天前
xpath定位:selenium和playwrightAnt Design / 表单类页面)
selenium·测试工具
daopuyun1 天前
CNAS/CMA软件检测实验室源代码漏洞测试工具选型要求与比对
软件测试·测试工具·软件检测·cnas认可·cma认定
Wpa.wk1 天前
接口自动化测试 - 请求构造和响应断言 -Rest-assure
开发语言·python·测试工具·接口自动化
AI_56781 天前
Postman接口测试提速技巧:批量请求+智能断言实践
测试工具·lua·postman
Luminbox紫创测控1 天前
整车自然暴晒与全光谱阳光模拟老化相关性研究
测试工具
Warren981 天前
Pytest Fixture 作用域与接口测试 Token 污染问题实战解析
功能测试·面试·单元测试·集成测试·pytest·postman·模块测试
弹简特1 天前
【JavaEE06-后端部分】SpringMVC01-Spring MVC第一大核心URL 路由映射【建立连接】与 Postman 接口测试详解
java·spring boot·测试工具·spring·postman
测试大圣2 天前
软件测试基础知识总结(超全的)
软件测试·python·功能测试·测试工具·职场和发展·单元测试·测试用例