记录Feign调用,往Header传输一个JSON对象时,对方接收不完整问题,
分享于 点击 24259 次 点评:56
记录Feign调用,往Header传输一个JSON对象时,对方接收不完整问题,
一.场景:
在使用 Feign调用接口时,该接口需要绑定一个写死的JSON对象和Token,实现一个继承了 RequestInterceptor 的配置类,将对象和token插入到 RequestTemplate 的 Header 中去,如下图:
其中signedPrincipal 是通过前端存放在 header 里来获取的,通过上下文获取请求对象:
二.出现问题:
我们要传输的对象 signedPrincipal ,如果不经过转码,那么 RequestTemplate.header 会将 :判断为一个新的参数,即:
//signedPrincipal1 = {"enterprise":"","instId":"0","instType":0,"isAdmin":2,"userId":"1","userType":1,"username":"admin"}
变成:
//signedPrincipal1 = {"enterprise":"","instId":}
如下图所示:
三.总结:
记录一下浪费了自己半个小时的小问题,防止下次脑子不清醒的时候,去弄字符串转码,流转码,再次提醒自己,检查BUG一定要从源头开始查询,减少排查的时间
本文来自博客园,作者:RolyPoly_Toy,转载请注明原文链接:https://www.cnblogs.com/ITXC/p/17803463.html
用户点评