2010-03-31 18 views
0

作爲關於REST URI的my previous question的後續行爲,用於檢索網絡論壇資源的統計信息,我想知道是否可以使用內部錨作爲過濾器提示。見下面的例子:使用內部錨來過濾REST API的表示是否有意義?

一)獲取所有統計信息:

GET /group/5t7yu8i9io0op/stat 
{ 
    group_id: "5t7yu8i9io0op", 
    top_ranking_users: { 
     [ { user: "george", posts: 789, rank: 1 }, 
     { user: "joel", posts: 560, rank: 2 } ...] 
     }, 
    popular_topics: { 
     [ ... ] 
    }, 
    new_topics: { 
     [ ... ] 
    } 
} 

B)只得到熱門的話題

GET /group/5t7yu8i9io0op/stat#popular_topics 
{ 
    group_id: "5t7yu8i9io0op", 
    popular_topics: { 
     [ ... ] 
    } 
} 

C)只得到世界排名第一的用戶

GET /group/5t7yu8i9io0op/stat#top_ranking_users 
{ 
    group_id: "5t7yu8i9io0op", 
    top_ranking_users: { 
     [ { user: "george", posts: 789, rank: 1 }, 
     { user: "joel", posts: 560, rank: 2 } ...] 
    } 
} 

還是應該我正在使用查詢參數?

回答

2

不知道你正在嘗試做的完全是,但一定要明白,片段標識符不是由服務器看到的,他們被客戶端連接器切斷。

參見:http://www.nordsc.com/blog/?p=17

0

我從來沒有見過這樣使用錨 - 這很有趣。話雖這麼說,我建議使用查詢參數有兩個原因:

  1. 他們的標準 - 消費者你的API都將與他們舒服。處理古怪的api沒有什麼更煩人的了。

  2. 許多框架會自動解析查詢參數並將它們設置在請求對象的字典中(或者框架/ http服務器庫中存在的任何模擬)。

0

我認爲這會更有意義有:

/group/5t7yu8i9io0op/stat/top_users 
/group/5t7yu8i9io0op/stat/popular_topics 
/group/5t7yu8i9io0op/stat/new_topics 
/group/5t7yu8i9io0op/stat/user/george 
0

不,你不能這樣做,因爲揚指出,服務器永遠不會看到片段標識符。從字面上看,這部分url不會到達服務器。

相關問題