2016-08-03 162 views
1

我得到這個錯誤:
產生java.io.IOException:服務器返回的HTTP響應代碼:400網址:https://graph.facebook.com/search?q=java&type=post 在sun.net.www.protocol.http.HttpURLConnection .getInputStream(未知來源) 在sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(未知來源) 在java.net.URL.openStream(未知來源) 在Main.main(Main.java:19)服務器返回的HTTP響應代碼:400網址:

此代碼:

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

如果只是想在瀏覽器的網址,我得到的迴應:

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

它還具有400響應代碼,這樣似乎很清楚足以爲爲什麼你得到它:
訪問令牌是必需的。

我在代碼中看不到任何東西試圖提供這樣的訪問令牌。

相關問題