ä»å¤©å¨RestTemplateè°è¯çæ¶ååç°è¿åç䏿åºç°äºä¹±ç ï¼ä½¿ç¨postmanæä»¶æµè¯å´åç°æ²¡æä¹±ç ã
ä»ç»è§å¯è¿ååè®®åï¼åç°postman卿ªè®¾ç½®çæ¶åAccept屿§æ¯ */*ï¼æä»¥ä¸æ¯ä¹±ç
RestTemplateé»è®¤æ¯ä½¿ç¨org.springframework.http.converter.StringHttpMessageConverteræ¥è§£æ
/** Create a new instance of the {@link RestTemplate} using default settings. */
public RestTemplate() {
this.messageConverters.add(new ByteArrayHttpMessageConverter());
this.messageConverters.add(new StringHttpMessageConverter());
this.messageConverters.add(new ResourceHttpMessageConverter());
this.messageConverters.add(new SourceHttpMessageConverter());
this.messageConverters.add(new AllEncompassingFormHttpMessageConverter());
if (romePresent) {
this.messageConverters.add(new AtomFeedHttpMessageConverter());
this.messageConverters.add(new RssChannelHttpMessageConverter());
}
if (jaxb2Present) {
this.messageConverters.add(new Jaxb2RootElementHttpMessageConverter());
}
if (jackson2Present) {
this.messageConverters.add(new MappingJackson2HttpMessageConverter());
}
else if (jacksonPresent) {
this.messageConverters.add(new MappingJacksonHttpMessageConverter());
}
}
çæºç åç°
public class StringHttpMessageConverter extends AbstractHttpMessageConverter<String> {
public static final Charset DEFAULT_CHARSET = Charset.forName("ISO-8859-1");
å± ç¶æ¯ç¨çISO-8859-1æ¥ç¼ç ç
为äºå¤ææ¯å®¢æ·ç«¯åºéè¿æ¯æå¡ç«¯åºéï¼äºæ¯ç¨postmanå°Accept设置为text/plainæµè¯ï¼åç°è¿æ¯ä¹±ç
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
</list>
</property>
</bean>
å¨spring mvcä¸é ç½®çç±»ä¹æ¯è¿ä¸ªï¼å¿ ç¶æ¯è¿ä¸ªæé®é¢äº
æµè§äºå¾å¤å¸åé½è¯´æ¹æºç
ç±äºææ¯Mavenæå»ºç项ç®ï¼æä»¥æ²¡æä¿®æ¹æºç åæ¿æ¢jarå éçclassæä»¶ï¼äºæ¯æ°å»ºä¸ä¸ªä¸æ ·çå åï¼ä¸æ ·çç±»å
public class StringHttpMessageConverter extends
AbstractHttpMessageConverter<String> {
public static final Charset DEFAULT_CHARSET = Charset.forName("UTF-8");
å°æºç å¤å¶ä¸ä¸ï¼åå°IOS-8859-1æ¹ä¸ºUTF-8ï¼é®é¢è¿åèè§£ï¼
使¯ä¹æä¸æ¹æºç çæ¹æ³ï¼å°spring mvc é ç½®æä»¶ä¿®æ¹å¦ä¸
<bean class="org.springframework.http.converter.StringHttpMessageConverter">
<constructor-arg value="UTF-8" index="0">
</constructor-arg>
<property name="supportedMediaTypes">
<list>
<value>text/plain;charset=UTF-8</value>
</list>
</property>
</bean>