2013-08-19 26 views
0

我的英語不是最好的,但我會盡力解釋我想要的。所以,我們有一個很大的json,它有很多數據,現在因爲服務器不能同時向我們顯示所有的數據,所以在這個大json中會有多個小json的鏈接,就像有20條評論頁面,然後有一個「顯示更多評論」按鈕。我的問題是,我不知道如何做到這一點,如何請求更小的json,解析它。另一個問題是如何解析JSON這在年底鏈接到另一個JSON,東西requestiong從圖形API一個JSON時一樣,並在年底有解析一個大json然後多個小jsons

[paging] => stdClass Object 
( 
    [previous] => https://graph.facebook.com/$group_id$/feed?access_token=$valid_token$&__paging_token=$paging_token$&__previous=1 
    [next] => https://graph.facebook.com/$group_id$/feed?access_token=$valid_token$&limit=25&until=1375310522&__paging_token=$paging_token$ 
) 

當從[下一頁]打開該鏈接,它會顯示更多的帖子,然後再有一個鏈接。 關於第一個問題,我有一個長一點例如,從Facebook的圖形API評論

[comments] => stdClass Object 
(
[data] => Array 
(
    [0] => stdClass Object 
    (
     [id] => 53575265890127 
     [from] => stdClass Object 
     (
      [name] => Pop Dan 
      [id] => 10000897827962 
     ) 
    [message] => Random message 
    [can_remove] => 1 
    [created_time] => 2013-08-18T20:01:44+0000 
    [like_count] => 0 
    [user_likes] => 
    ) 
    ... more coments... 
[paging] => stdClass Object 
    (
     [cursors] => stdClass Object 
     (
      [after] => NTM1ODIxODE5ODA2NTQ0 
      [before] => NTM1NzUyNjU2NDgwMTI3 
     ) 
     next] => https://graph.facebook.com/$group_id$_$post_id$/comments?access_token=$accestoken$&limit=25&after=NTM1ODIxODE5ODA2NTQ0 
    ) 
) 

在那裏,我想繼續從[下一步]解析JSON並打印在同一個HTML網頁,而無需任何間斷或評論之間的任何事。謝謝;)

回答

0

一些細節取決於你用於查詢圖形API的語言。

從圖形api返回的Json可以由json數組和json對象組成。 Json對象可以進一步具有名稱值實體

如果您在android中執行此操作,首先必須首先從響應中獲取內部json對象。你能做到這樣

GraphObject go = response.getGraphObject(); 
         JSONObject jso = go.getInnerJSONObject(); 

我們得到的JSON對象,你可以使用

jso.getJSONObject("object_name"); 

,並獲得JSON數組,你可以使用其他

jso.getJSONArray("array_name") 

語言將有類似的接口

對於json的一般理解,請參考此link

關於你的第二個問題,你應該明白,接下來只是對圖節點的另一個查詢,但具有不同的參數。如何參數可以設置依賴於API,但在Android中,你可以按照如下

Bundle params=r.getParameters(); 
    params.putString("offset", ""+25); 

r.setParameters(params); 

r是類型請求的對象

+0

我知道如何解析JSON PUR參數,但我不知道如何獲取並解析第一個json中鏈接的其他jsons。我正在使用PHP。 – Zephy