RestTemplate呼叫遠端介面的總是不通?

2021-10-07 01:36:56 字數 2474 閱讀 3650

很多同學在問我,resttemplate呼叫遠端第三方介面總是報錯的問題,在這裡提一下,因為思路其實非常簡單,但問我的同學卻很無處下手,希望可以幫到大家。

resttemplate其實就是http協議的生成並呼叫,作用同第三方http client工具,只是乙個是工具乙個是**,但功能完全一致。在不知道怎麼除錯的時候,除了可以看原始碼,還有中非常簡單的方式,就是列印出request的header、body去對比,對比看是否和postman等第三方工具的header、body是否一致?

如果不一致,那麼不一致的地方就是呼叫失敗的原因。

因為resttemplate的本質就是遵守http協議的規範,如果postman呼叫沒有問題,那麼一定是resttemplate的header或者body中的資料格式問題。

下面會舉例乙個具體的例子說明:

我們可以明顯看到請求體body已經不是list了,而是乙個普通的json,這樣的body才是介面要求的,也和postman的格式保持一致。那麼這樣的請求就是沒有問題的了。

使用RestTemplate呼叫外部Http介面

使用resttemplate呼叫外部http介面 我們使用resttemplate呼叫外部介面,resttemplate可以自動轉換實體類和json字串,這樣便於我們呼叫介面。通常我們得到乙個外部介面,會告訴我們請求報文和響應報文。例如 這樣在轉換時,就會自動將companyreqheader轉換為...

RestTemplate 呼叫服務三種方式

1.第一種方式直接使用resttemplate,url固定 public string getproductmsg response return response 2.第二種方式 利用loadbalancerclient通過應用名稱獲取url。再使用resttemplate autowired p...

RestTemplate使用總結

resttemplate的介紹就不說了,總的來說用這個物件可以很方便的模擬乙個http請求。talk is cheap,show me the code,使用的是springboot整合的工程所以以下涉及到的物件都是註解式的宣告和注入,一 宣告resttemplate物件 當然,可以利用註解 bea...