下面列出了org.springframework.http.MediaType#APPLICATION_JSON_UTF8 ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。
@Test
public void writeJsonWithJavaFormat() throws IOException {
this.converter = new ProtobufHttpMessageConverter(
new ProtobufHttpMessageConverter.ProtobufJavaFormatSupport(),
this.extensionRegistry);
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
MediaType contentType = MediaType.APPLICATION_JSON_UTF8;
this.converter.write(this.testMsg, contentType, outputMessage);
assertEquals(contentType, outputMessage.getHeaders().getContentType());
final String body = outputMessage.getBodyAsString(Charset.forName("UTF-8"));
assertFalse("body is empty", body.isEmpty());
Msg.Builder builder = Msg.newBuilder();
JsonFormat.parser().merge(body, builder);
assertEquals(this.testMsg, builder.build());
assertNull(outputMessage.getHeaders().getFirst(
ProtobufHttpMessageConverter.X_PROTOBUF_MESSAGE_HEADER));
assertNull(outputMessage.getHeaders().getFirst(
ProtobufHttpMessageConverter.X_PROTOBUF_SCHEMA_HEADER));
}
@Test
public void writeJsonWithGoogleProtobuf() throws IOException {
this.converter = new ProtobufHttpMessageConverter(
new ProtobufHttpMessageConverter.ProtobufJavaUtilSupport(null, null),
this.extensionRegistry);
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
MediaType contentType = MediaType.APPLICATION_JSON_UTF8;
this.converter.write(this.testMsg, contentType, outputMessage);
assertEquals(contentType, outputMessage.getHeaders().getContentType());
final String body = outputMessage.getBodyAsString(Charset.forName("UTF-8"));
assertFalse("body is empty", body.isEmpty());
Msg.Builder builder = Msg.newBuilder();
JsonFormat.parser().merge(body, builder);
assertEquals(this.testMsg, builder.build());
assertNull(outputMessage.getHeaders().getFirst(
ProtobufHttpMessageConverter.X_PROTOBUF_MESSAGE_HEADER));
assertNull(outputMessage.getHeaders().getFirst(
ProtobufHttpMessageConverter.X_PROTOBUF_SCHEMA_HEADER));
}
@Test
public void writeJsonWithJavaFormat() throws IOException {
this.converter = new ProtobufHttpMessageConverter(
new ProtobufHttpMessageConverter.ProtobufJavaFormatSupport(),
this.extensionRegistry);
MockHttpOutputMessage outputMessage = new MockHttpOutputMessage();
MediaType contentType = MediaType.APPLICATION_JSON_UTF8;
this.converter.write(this.testMsg, contentType, outputMessage);
assertEquals(contentType, outputMessage.getHeaders().getContentType());
final String body = outputMessage.getBodyAsString(Charset.forName("UTF-8"));
assertFalse("body is empty", body.isEmpty());
Msg.Builder builder = Msg.newBuilder();
JsonFormat.parser().merge(body, builder);
assertEquals(this.testMsg, builder.build());
assertNull(outputMessage.getHeaders().getFirst(
ProtobufHttpMessageConverter.X_PROTOBUF_MESSAGE_HEADER));
assertNull(outputMessage.getHeaders().getFirst(
ProtobufHttpMessageConverter.X_PROTOBUF_SCHEMA_HEADER));
}
@SuppressWarnings("unused")
protected MediaType getErrorResponseContentType(
DefaultErrorContractDTO errorContractDTO,
int httpStatusCode,
Collection<ApiError> rawFilteredApiErrors,
Throwable originalException,
RequestInfoForLogging request
) {
// Default to simply application/json in UTF8.
return MediaType.APPLICATION_JSON_UTF8;
}
public QuoteOnDesignMessageConverter() {
super(Jackson2ObjectMapperBuilder.json().build(),
MediaType.APPLICATION_JSON_UTF8,
new MediaType("text", "x-json", DEFAULT_CHARSET));
}
/**
* Construct a new {@code GsonHttpMessageConverter}.
*/
public GsonHttpMessageConverter() {
super(MediaType.APPLICATION_JSON_UTF8, new MediaType("application", "*+json", DEFAULT_CHARSET));
}
public FastjsonHttpMessageConverter(SerializeConfig serializeConfig, ParserConfig parserConfig) {
super(MediaType.APPLICATION_JSON_UTF8, new MediaType("application", "*+json", DEFAULT_CHARSET));
this.serializeConfig = serializeConfig;
this.parserConfig = parserConfig;
}
/**
* Construct a new {@link MappingJackson2HttpMessageConverter} with a custom {@link ObjectMapper}.
* You can use {@link Jackson2ObjectMapperBuilder} to build it easily.
* @see Jackson2ObjectMapperBuilder#json()
*/
public MappingJackson2HttpMessageConverter(ObjectMapper objectMapper) {
super(objectMapper, MediaType.APPLICATION_JSON_UTF8,
new MediaType("application", "*+json", DEFAULT_CHARSET));
}