0
好了,所以我終於設法通過PHP成功鏈接動態新聞發佈在我的網站我的網頁牆爲頁面(不是用戶)。 不過我想知道我的解決方案是否正確,或者它是否能長期運行。 說了,這裏是我所做的:動態後張貼到網頁牆壁一步一步我做了什麼
- 創建一個配置文件管理頁面
- 公司創建頁面
- 創建了域名指向我的網站域名和網站指向我的網站的應用程序網址
- 禁用offline_access爲了能夠發出offline_access令牌棄用
- 發現我的pageID通過http:// graph.facebook.com/PAGE_NAME
- 去了https://開頭developers.facebook.com/tools/explorer/APP_ID
- 的,而不是用戶ID的粘貼的pageID並點擊提交
- 然後我點擊獲取訪問令牌和檢查manage_pages,publish_stream,offline_access
時(僅此沒有工作,我訪問了https://developers.facebook.com/docs/authentication/和「頁面登錄」下,我發現頁面登錄需要不同類型的標記......)
- 手動得到來自https://www.facebook.com/dialog/oauth?client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&scope=manage_pages,publish_stream,offline_access&response_type=token 令牌
- redirect_uri在這種情況下可以是任何東西,我們只想要發回的url標記參數
- 複製從URL發回的標記(如果一切順利,響應中的expires url參數設置爲0)
- 然後我基本上這樣做的PHP腳本:
require_once('facebook-sdk/facebook.php');
//Required facebook auth vars
$appID = 'APP_ID';
$appSecret = 'APP_SECRET';
$pageID = 'PAGE_ID';
$appOfflineToken = 'TOKEN_RETURNED_IN_PREVIOUS_STEP';
$pageTokenURL = 'https://graph.facebook.com/me/accounts?access_token=';
$access_token = '';
//connect to facebook app
$facebook = new Facebook(array(
'appId' => $appID,
'secret' => $appSecret,
'cookie' => true
));
//get page managed pages information
$jsonData = file_get_contents($pageTokenURL.$appOfflineToken);
$content = json_decode($jsonData, true);
//filter access_token for desired page using pageID
foreach($content['data'] as $item) {
if($item['id'] == $pageID){
$access_token = $item['access_token'];
break;
}
}
//format post
$post = array(
'access_token' => $access_token,
'picture' => "http://URL_TO_PICTURE,
'link' => "http://URL_TO_NEWS_POST",
'name' => "NEWS_TITLE",
'description' => 'NEWS_DESCRIPTION'
);
//post content to page wall
$res = $facebook->api('/'.$pageID.'/feed', 'POST', $post);
所以我的問題是......儘管這似乎牽強...是正確的嗎?至少它是有效的!
PS:抱歉的鏈接,但只能在這個崗位提交2 ...不夠街頭信譽看來:對
你看起來沒錯。無論如何,你爲什麼手動做這件事? – gremo 2012-02-17 02:37:30
很好,因爲事實證明,你只需要發出應用offline_access訪問令牌一次......我不過更新腳本,包括在案件出於某種原因失效安全令牌死了,產生一個新的令牌(因爲在他們說offline_access令牌的文檔很長,他們只是不說多久)。 我主要是張貼這是因爲大部分是我在谷歌發現沒有涵蓋同步了網頁牆上的網站有新聞更新的想法......還因爲我不能確定,這個過程是正確的,如果它是一個莫名其妙「黑客」或者是否有其他方式:P – 2012-02-17 18:18:24
'offline_access'將在幾周內棄用。但是,您的現有(永不過期)訪問令牌將繼續工作。無論如何檢查https://developers.facebook.com/docs/offline-access-deprecation/ – gremo 2012-02-17 20:03:02