今早打算編寫新的 Template 時,在 Tools 頁面發現以下訊息:
Facebook will deprecate template bundles and their related API calls December 20, 2009.
Please start using stream attachments with stream.publish, FB.Connect.streamPublish, and Facebook.streamPublish instead.
這個衝擊說大不大說小不小!影響不大是因為我還沒很善用它,但我已經有點彈性疲乏啦,因為準備要塞進 Template 的資料,弄得很疲憊。不過,該做的正事還是要完成。
目的:
在 FBML 模式下,以 FBJS 達成過去 Facebook.showFeedDialog 的效果。
解法:
使用 Facebook.streamPublish 來代替,而原先的 template 部份將變成在 Code 裡。好處是可以少一次跟 Facebook Server 要資料吧。或許這也是 template 佔用資源而被拿掉的可能性??
除此之外,還需要用到 attachment 概念,就是以前寫在 template 上的資訊
程式碼:
<script type="text/javascript">
function do_post()
{
var attachment = {
'name':'Quiz',
'href':'http://apps.facebook.com/your_apps/',
'description':'good!',
'caption':'{*actor*} is very smart!',
'media':[
{
'type':'image',
'src':'http://upload.wikimedia.org/wikipedia/commons/thumb/0/06/Facebook.svg/200px-Facebook.svg.png',
'href':'http://zh.wikipedia.org/wiki/Facebook'
}
]
};
Facebook.streamPublish( '' , attachment , null , null , 'Message:' , null , false );
}
</script>
接著在適當地地方呼叫 do_post(); 吧!
- 以 click 呼叫
- <a href="#" onclick="do_post();return false;">Click Here!</a>
- 自動執行
- <script type="text/javascript">
do_post();
</script> - 記得這段 code 要擺在 function() do_post{ ... } 後頭才用喔
- <script type="text/javascript">
收工。
參考資料:
相關文章
template 我還沒深入研究,就要廢掉了? 那不用研究了...XD
而裡面有php和javascript,我該如何去呼叫do_post();呢!
請指教
"而原先的 template 部份將變成在 Code 裡"可否示範或解釋一下
不好意思請問一下我把上面的code貼進去test.html
然後有去呼叫do_post();也有改成自己的 'href':'http://apps.facebook.com/your_apps/',
按F12左下角會出現三角形驚嘆號!點開來看會出現錯誤訊息:'FaceBook 未被定義'
請問一下是我少做了什麼嗎?謝謝
Nash
我有將do_post() 放在後面!也有試了<a href="#" onclick="do_post();return false;">Click Here!</a> 這個方法。
但他的錯誤還是在。
後來我把 Facebook.streamPublish( '' , attachment , null , null , 'Message:' , null , false ); 註解掉!就沒有錯誤!但這行是最重要的阿!
我在想我是不是要载入什麻類別或是什麼。
我這邊只有開一個空的HTML然後把大大的CODE貼上去!
是不是我要去下載什麼?
在麻煩大大幫我看一下謝謝。
但我是用IFrame的模式,所以有可能是這個關係!Orz...
所以這個Code沒辦法用在IFrame上嗎?
嗚~找好久只有你有分享!!
不過還是謝謝大大你的分享及回答!^^
~不知道您知道IFrame的寫法嗎?
謝謝你的回答~大大的文章分享的很棒唷~^^~
是否有哪些參數值? 可否請大大告知呢?
完全沒有指定到target_id囉??
阿不知道這位大大,之不知道評分的API或是有什麼方法可以對APP評分@@"
不好意思問那麼多問題,打擾您了。
一直都搞不定說...
我看到其他的範例不會顯示這部份說><"
真害...
請問
該如何發佈到粉絲專頁呢????始終測不出來
我想寫像plurk可以轉發到Facebook的功能,我可以抓到我的個人資料、朋友的資料,但是使用stream_publish()卻發生The user hasn't authorized the application to perform this action,API也顯示我沒有stream_publish()的權限,想請問一下這跟我Facebook上的設定有關嗎,我是寫java的,可以麻煩大大們幫幫我解惑嗎,我真的搞不定Orz如何自動發佈到好友的塗鴉牆呢
看過很多個app,在選擇推薦好友那頁時,自動會將訊息貼到塗鴉牆,請問這是怎麼做到的呢?謝謝
do_post();
</script>
上面是大大您所寫的自動執行語法 我放在iFrame架構下可以執行 , 但是在FBML下 就無法執行
如果要在FBML下執行 , 是否可行 謝謝