스프링 부트 응용 프로그램에서 YQL에 대한 REST 호출을 만들려고합니다. 'format = json'으로 설정해도이 호출은 'application/javascript'를 반환합니다.format = json이 요청 된 경우에도 YQL이 application/javascript를 반환합니다.
org.springframework.web.client.RestClientException : 응답을 추출 할 수 없습니다 : 응답 유형에 적합하지 않음 HttpMessageConverter가 응답 유형으로 발견되었습니다. [클래스 com.dilteam.research.YqlQueryResult] 및 콘텐트 유형 [프로그램/스크립트 캐릭터 = UTF-8 여기서
메소드 (processTicker) & 연관된 클래스 (YqlQueryResult)이다 :
public void processTicker(String ticker) {
RestTemplate restTemplate = new RestTemplate();
String query = "https://query.yahooapis.com/v1/public/yql?q=select%20*%20from%20yahoo.finance.quotes%20where%20symbol%3D'YHOO'&format=json&callback=?";
YqlQueryResult qr = restTemplate.getForObject(query, YqlQueryResult.class);
System.out.println("result" + qr.results);
}
@JsonIgnoreProperties(ignoreUnknown = true)
public class YqlQueryResult {
public String results;
}
무엇 내가 틀렸어?
새로운 MediaType에가 ("응용 프로그램/자바 스크립트") 작동하지 않았다, 그래서 변경
: 새로운 MediaType ("application", "javascript") 점점 : 원인 : com.fasterxml.jackson.core.JsonParseException : 예상치 못한 문자 ('/'(코드 47)) : 비표준 코멘트일까요? ('ALLOW_COMMENTS'기능이 파서 용으로 활성화되어 있지 않으므로 인식되지 않음) 반환되는 JSON은 다음과 같습니다./**/v ({ "query": {..... – DilTeam'COMMENTS'문제를 해결하려면 , 다음 줄을 추가했지만 이제는 Null 개체를 반환합니다. converter.getObjectMapper(). configure (JsonParser.Feature.ALLOW_COMMENTS, true); – DilTeam
이유는 'Null'을 얻는 이유는 'yahoo.finance.quotes '는 YQL에서 더 이상 사용할 수 없습니다. 이상하게 야후!가 정책을 변경했습니다.이 문제를 마무리하십시오. 포인터에 대한 Andy에게 감사드립니다. – DilTeam