在使用RestTemplate的請求微信接口過程中發現中文亂碼
因爲是定製的請求,所以修改了微信的請求源碼,並不是使用的微信sdk自帶的get以及post請求,這裏我使用的是restTemplate進行請求,發現返回的結果中如果存在中文的話,是亂碼的.
於是乎翻看源碼應該是String的轉換時候編碼出問題了,這裏發現默認是ISO-8859-1的,所以要設置爲UTF-8
解決辦法:在請求之前將restTemplate的默認編碼改爲utf-8
restTemplate.getMessageConverters().set(1, new StringHttpMessageConverter(StandardCharsets.UTF_8));
但是這只是緩兵之計,如果只使用一次可以這樣,如果多次使用建議還是寫一個bean在初始化的時候將編碼改掉