2012-01-25 54 views
0

用戶對頁面發表評論,評論發佈到他們的Facebook牆上。當另一個Facebook用戶點擊鏈接查看評論時,它會鏈接回頁面,但最終會有大量的數字。「Facebook評論ID」已添加到網址 - 不便

http://canofclouds.com/thought/?fb_comment_id=fbc_10150505683457013_20914817_10150507783662013#55

原始URL是:http://www.canofclouds.com/thought/#55

這是一切優秀,雖然到目前爲止,直到用戶點擊一個按鈕即可進入

http://www.canofclouds.com/thought/#56

相反,它進入:

http://canofclouds.com/thought/?fb_comment_id=fbc_10150505683457013_20914817_10150507783662013#f25e670a6c

哪個不好 - 因爲它不存在。理想情況下,它只是去http://www.canofclouds.com/thought/#56

通常,當用戶點擊下一個按鈕時,一陣JavaScript抓取散列鍵(在這種情況下#55),然後加1(使#56 - yay)並執行ajax調用來獲取新內容。雖然這個facebook的東西讓事情變得有點複雜。

任何想法?

編輯:更理想的是,我可以完全禁用'fb評論ID'。

回答

1

你不應該使用散列鍵鏈接到你的頁面。您應該使用規範URL來執行此操作。

關於如何處理堆棧溢出,有幾個問題。

如果您選擇不製作規範的URL,繞過它的唯一方法就是在網絡或Web服務器級別執行URL重寫。

+0

恩,恩,我以前見過它。 9gag.com做到了。當有人點擊鏈接到Facebook上的9gag評論 - 它只是直接到網址,它不添加'Facebook評論ID' – JoeRocc

+0

他們可能有一些他們的服務器上的重寫規則,允許它與Facebook一起工作。 9gag的網址爲http://9gag.com/gag/2111134?ref=fb-share注意,這裏沒有哈希和哈希爆炸。只是普通的查詢字符串參數 – DMCS

+0

即使他們的評論區域使用http://9gag.com/gag/2133254。這就是你所說的規範URL。 :) – DMCS