2011-10-19 98 views
8

它可能在文檔或只是我犯錯,但在任何情況下,我認爲這是混淆看到同FB的幾個不同的定義了一個錯誤:命名空間:fb:namespace代表什麼?

  • xmlns:fb="http://www.facebook.com/2008/fbml"
    作爲例子給出here
  • xmlns:fb="http://ogp.me/ns/fb#"
    顯示在生成的XFBML代碼here中。

那麼開發人員應該使用哪一個?

+0

非常好的問題,在Facebook開發者這個話題仍然很差的文檔。非常感謝 –

回答

1

我相信你現在應該使用

<html xmlns:fb="http://ogp.me/ns/fb#"> 

這就是其Beta測試版插件的XFBML標籤的示例代碼中使用,所以我想這是最新的。我從來沒有看到它使用之前,你的文章暗示它是更新的,然後在2008年的Facebook名稱空間。見This

+0

也許這與FBML的廢棄有關: http://developers.facebook.com/docs/reference/fbml/ –

+0

如果有疑問,請檢查Facebook正在做什麼。他們自己不使用''([示例](https://developers.facebook.com/products/social-plugins) )。 – 10basetom

+0

@ 10basetom這個答案來自2011年,這就是爲什麼它可能會過時。但我也會強調,最好的地方是文檔,而不是facebook.com的來源(我認爲這就是你所得到的),因爲推薦的和公司做的並不總是相同的。特別是他們可能會嘗試新的功能,或者他們可能會很慢採用自己的最佳做法(不過公認Facebook的發佈相當多)。事實上,我不確定你甚至不需要這個命名空間聲明 – TommyBs

0

的xmlns:OG = 「http://ogp.me/ns#」 的xmlns:FB = 「http://www.facebook.com/2008/fbml」> 兩者都與約開放圖形協議 我的理解是允許爲標記和屬性添加 名稱空間信息的xmlns屬性

+0

你的理解是正確的,但它並沒有闡明哪一個是正確的。您不能有兩個具有相同前綴的名稱空間聲明。 –

3

fb名稱空間就像您的應用程序名稱。

例如,如果你的應用程序名稱您testapp畫布網址將是

apps.facebook.com/testapp/

希望幫助

編輯:開發商屏幕存在命名空間領域我的信息是關於它。

+0

我已經看到了這個,但我不認爲它是相關的 - 我的意思是官方FB:命名空間 –

+0

遵循這個提示,但對我來說沒有意義 –

5

剛問過facebook工程師(今天在手機黑客馬拉松)。

指教是使用第二個: 的xmlns:FB =「http://ogp.me/ns/fb#」在所生成的代碼XFBML在這裏,表示:http://developers.facebook.com/docs/reference/plugins/like/

作爲第一個是用於不推薦使用的fbml。

(如果我錯了,此信息直接來自Facebook工程師)。