前言 本文案例來自業務部門的一個業務場景。他們的業務場景是他們部門研發了一個微服務上下文透傳組件,其透傳原理也挺簡單的,就是通過springboot攔截器把請求參數塞進threadlocal,然後下游通過threadlocal取到值,服務之間進行feign調用時,再把threadlocal的參數塞到header頭裏面。這個組件一直用得好好的,突然有一天因為傳的參數值是中文,導致亂碼。他們通過嘗試下
在與後端的調試中發現一個問題,使用post發請求時,發送的params後端一直説沒收到參數,F12發現參數確確實實已經發送了。如圖: 使用swagger發送同樣的參數請求卻可以接收到: 通過比對發現,兩者的不同在於一個參數類型是Form Data,一個是Request Payload。什麼意思呢? 百度一下 你就知道 Request Payload更準確的説是http request的payl