2016-08-03 4 views
1

내가이 오류 :
때 java.io.IOException : 서버 반환 된 HTTP 응답 코드 : 400 URL에 대한 : https://graph.facebook.com/search?q=java&type=post sun.net.www.protocol.http.HttpURLConnection에서 (Unknown Source) at main.net (Main.java:19) 에서 .htpsURLConnectionImpl.getInputStream (알 수없는 소스) 을 java.net.URL.openStream (알 수없는 소스)에서 에서 알 수없는 소스 에서 가져옵니다. 이 코드에 대한서버는 HTTP 응답 코드를 반환

:

import java.io.BufferedReader; 
import java.io.IOException; 

import java.io.InputStream; 
import java.io.InputStreamReader; 
import java.net.HttpURLConnection; 
import java.net.MalformedURLException; 
import java.net.URL; 
import java.util.Scanner; 

import org.json.JSONObject; 
import javax.json.*; 



public class Main { 
    public static void main(String[] args) { 
      try { 
       URL url = new URL("https://graph.facebook.com/search?q=java&type=post"); 
       InputStream is = url.openStream(); 
       JsonReader rdr = Json.createReader(is);   
       JsonObject obj = rdr.readObject(); 
       JsonArray results = obj.getJsonArray("data"); 
       for (JsonObject result : results.getValuesAs(JsonObject.class)) { 
        System.out.print(result.getJsonObject("from").getString("name")); 
        System.out.print(": "); 
        System.out.println(result.getString("message", "")); 
        System.out.println("-----------"); 
       } 
      } catch (MalformedURLException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } catch (IOException e) { 
      // TODO Auto-generated catch block 
      e.printStackTrace(); 
     } 
    } 
} 

그리고 왜 이해가 안되니?

+0

HTTP 400 의미 : 형식이 잘못된 구문으로 인해 요청을 서버에서 이해할 수 없습니다. 클라이언트는 수정하지 않고 요청을 반복해서는 안됩니다. – Mehari

답변

0
단순히 브라우저에서 해당 URL을 시도

, 내가 얻을 응답 :

{ 
    "error": { 
     "message": "An access token is required to request this resource.", 
     "type": "OAuthException", 
     "code": 104, 
     "fbtrace_id": "Du6VLoot53K" 
    } 
} 

에 관해서는 충분히 명확 보인다 있도록 또한, 400의 응답 코드가 왜 당신은 그것을 얻을 :
액세스 토큰이 필요합니다.

코드에 액세스 토큰을 제공하는 데 아무 것도 없습니다.

관련 문제