2013-04-27 804 views
0

我正在使用解析REST API来获取我的程序的版本ID,并且当我尝试连接java程序时,返回IOException与401错误,但是当我连接到这与浏览器我得到正确的JSON格式为什么?在parse.com上获得401错误REST API(Java)

我收到此错误。

java.io.IOException: Server returned HTTP response code: 401 for URL: https://[email protected]/1/classes/NicksNoteVersion/xngGDAa1k3 
at sun.net.www.protocol.http.HttpURLConnection.getInputStream(Unknown Source) 
at sun.net.www.protocol.https.HttpsURLConnectionImpl.getInputStream(Unknown Source) 
at java.net.URL.openStream(Unknown Source) 
at startup.Launcher.main(Launcher.java:26) 

`

我的程序代码是:

try{ 
    URL url = new URL("https://XXXXXX:[email protected]/1/classes/NicksNoteVersion/xngGDAa1k3"); 
    JSONTokener tokener = new JSONTokener(url.openStream()); 
    JSONObject json = new JSONObject(tokener); 
    }catch(Exception e){ 
     e.printStackTrace(); 
     System.out.println("Version retrieval failed"); 
    } 
+0

您应该先授权。 – Bart 2013-04-27 06:54:10

+0

@关键是我是如何在java新:P – user36976 2013-04-27 07:01:51

+0

你应该在使用它之前阅读文档。 https://www.parse.com/docs – Bart 2013-04-27 07:04:45

回答

1

尝试设置自定义首as documented

认证是通过HTTP头文件来完成。 X-Parse-Application-Id标头标识您正在访问的是哪个应用程序,而X-Parse-REST-API-Key标头标识了端点。

URL url = new URL("..."); 
URLConnection conn = url.openConnection(); 
conn.setRequestProperty("X-Parse-Application-Id", "..."); 
conn.setRequestProperty("X-Parse-REST-API-Key", "..."); 
JSONTokener tokener = new JSONTokener(conn.getInputStream()); 
...