HTTP를 사용하는 Google 트렌드에서 JSON 응답을 받으려고합니다.(자바) 브라우저에서 완벽하게 작동하는 링크에도 불구하고 HTTP GET 요청이 400 응답 코드를 계속받습니다.
public class TestClass {
public static void main(String[] args) throws Exception{
String address = "https://trends.google.com/trends/api/explore?hl=en-US&tz=240&req={\"comparisonItem\":[{\"keyword\":\"Miley\",\"geo\":\"US\",\"time\":\"2012-01-01 2014-01-01\"},{\"keyword\":\"Hannah Montana\",\"geo\":\"US\",\"time\":\"2012-01-01 2014-01-01\"}],\"category\":0,\"property\":\"\"}";
URL url = new URL(address);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
con.setRequestMethod("GET");
int responseCode = con.getResponseCode();
System.out.println("URL is "+address);
System.out.println("Response code is " + responseCode); }
}
이 출력은 다음과 같습니다 : 이것은 내 코드입니다 내 브라우저에 URL을 직접 입력하면
URL is https://trends.google.com/trends/api/explore?hl=en-US&tz=240&req={"comparisonItem":[{"keyword":"Miley","geo":"US","time":"2012-01-01 2014-01-01"},{"keyword":"Hannah Montana","geo":"US","time":"2012-01-01 2014-01-01"}],"category":0,"property":""}
Response code is 400
, 구글은 나에게 아무 문제가있는 JSON 파일을 제공합니다. 그러나 Java를 사용하여 해당 URL에 액세스하려고하면 잘못된 요청이 표시됩니다. 이 문제를 어떻게 해결할 수 있습니까? 미리 감사드립니다.
URL 문자열의 큰 따옴표를 역 슬래시로 이스케이프하지 않으실 수 있습니까? 작은 따옴표를 사용하여 어떤 일이 일어나는지보십시오. –
@ DanielH.J. 방금 시도했지만 작동하지 않았습니다. –
제가이 권리를 읽고 있다면 코드가 브라우저에 출력하는 URL을 붙여 넣을 때 열리는 것입니까? – fuzzyblankey