2012年3月18日 星期日

Note2

        上一次提到的問題在網路上有獲得解答了,facebook、twitter、plurk,在授權之後會配發

一個access_token&access_token_secret (Facebook 只有一個access_token),這次Facebook利用SDK面內建的函式很容易就可以取取得access_token,而twitter和plurk要拿到access_token就沒那

麼容易也上網查了很多資料,也問了一些有寫在blog上分享心得的人,感謝願意幫助的人,但

是有的就沒下文了。取得Access_token之後直接照著sdk跑似乎是失敗的,最後終於在google的

幫助下找到了答案,必須要在login的時候多宣告一個scope=>offline_access

<?php
require 'src/facebook.php';

//Create facebook instance.
$facebook = new Facebook(array(
  'appId'  => '377172255645552',
  'secret' => '0901a2d858e2edd546948d5697aefaa1',
  'cookie' => true,
));

$loginUrl = $facebook->getLoginUrl(array(
    'canvas' => 1,
    'fbconnect' => 0,
    'scope' => 'offline_access,publish_stream'
));

$post =  array(
//裡面可以傳入一些變數,可以參考這邊http://developers.facebook.com/docs/reference/api/post/ 
//Facebook的api網頁
//這邊是只有簡單的放了兩個變數
'access_token' =>'利用函式取得的access_token',
'message' => 'This message is posted with access token - !!' 
);
$facebook->api('/me/feed', 'POST', $post);

?>

接著還是這個禮拜的問題 plurk在網路上找範例,真的不是那麼好找,官方提供的api必須是已

經取得了access_token & access_token_secret  才能夠運作,twitter則是因為國外比較多人使用,

範例比較多比較好找,在試看看了。








2012年3月3日 星期六

Note1

經過這幾個禮拜看了好多網站都用不好,到後來才了解現在的社群網站多是使用oauth來做

授權的動作,之前沒有使用過php來登入一個網站,因此在網站上找了些資料,

但是找到的api都失效了,只能依照官方網站上面所提供的api來操作,但是也是初次使用不是

那麼的了解這些東西,大部分都是要和官方網站申請一個APP,接著會產生一組Comsumer Key

跟 Comsumer Secret,接著就能夠利用這組key和secret在網站上寫自己的程式。Twitter的API 下載

https://dev.twitter.com/docs/twitter-libraries之後將config.php內的值修改為網站上申請的APP就可以

了;FaceBook SDK 下載之後再在http://developers.facebook.com/docs/reference/php/facebook-api/

找到範例接著再將檔案內的key和secret修改並執行,但是Facebook在申請app的時候必須使用對

他們來說合法domin,因此我先試了no-ip但是很可惜並不合法,後來換了co.cc才成功;Plurk 到

官網的API下載http://www.plurk.com/API 之後解壓縮將config.php.sample 改為 config.php並填上key

和secret 。


照著上面的api應該就可以成功的在塗鴉牆上發布內容,但是問題出現了如果每次都要使用者登

入的話,必須讓程式知道我是哪個使用者,目前還是沒有找到解決的方式。