这个原因是因为,有一个json的MessageCoverter的缘故,会给字符串外面再包一层双引号,解决办法如下
1让字符串不带双引号
@Configuration
@EnableWebMvc
public class WebConfig implements WebMvcConfigurer {
@Bean
public StringHttpMessageConverter stringHttpMessageConverter() {
return new StringHttpMessageConverter();
}
@Override
public void configureMessageConverters(List<HttpMessageConverter<?>> converters) {
converters.add(stringHttpMessageConverter());
}
}
2 返回success
handleReturnValue 这个方法里边
if (obj.equals("success")) { resolver.handleReturnValue(obj, methodParameter, modelAndViewContainer, nativeWebRequest); }else{ resolver.handleReturnValue(new JsonResultObject<>(obj), methodParameter, modelAndViewContainer, nativeWebRequest); }
如果上边无法解决
另外的解决办法
在getmapping加一行
produces = "text/plain;charset=utf-8"
@GetMapping(value = "/callback",produces = "text/plain;charset=utf-8")