我只是管理頁面和編程腳本添加事件到該頁面。我可以使用我自己的帳戶,並允許應用程序管理我的頁面並將事件添加到該頁面。但我希望腳本添加事件,例如我將登錄到頁面並將事件作爲頁面發佈。我怎樣才能在PHP中做到這一點 - 我目前對所有會話,令牌和密鑰都有點困惑: - |Facebook:我可以添加一個事件頁面作爲頁面
問候 丹尼斯
我只是管理頁面和編程腳本添加事件到該頁面。我可以使用我自己的帳戶,並允許應用程序管理我的頁面並將事件添加到該頁面。但我希望腳本添加事件,例如我將登錄到頁面並將事件作爲頁面發佈。我怎樣才能在PHP中做到這一點 - 我目前對所有會話,令牌和密鑰都有點困惑: - |Facebook:我可以添加一個事件頁面作爲頁面
問候 丹尼斯
要發佈,因爲你需要得到用戶頁面管理令牌的頁面....
縮略版頁的身份驗證:(加offline_access) 從http://developers.facebook.com/docs/authentication/
獲得令牌管理premissions和offline_access:(與YOUR_APP_ID和YOUR_URL
https://www.facebook.com/dialog/oauth?client_id=YOUR_APP_ID&redirect_uri=YOUR_URL&scope=manage_pages,offline_access&response_type=token
一旦你驗證頁面更新,你將被重定向到YOUR_URL ... 在瀏覽器中,你的Wi將會看到重定向URL,哈希,訪問令牌,過期... 複製'token ='和'& expires = 0'之間的所有內容(如果它沒有過期= 0,您沒有做離線訪問提示)
<?php
require_once('facebook.php');
$app_id = "YOURAPPID";
$app_secret = "YOURSECRET";
$userAppToken = 'TOKENHERE!'; // from authentication
$pageID = '123456';
$facebook = new Facebook(array(
'appId' => $app_id,
'secret' => $app_secret,
'cookie' => true
));
$token = array(
'access_token' => $userAppToken
);
// Get the user page admin tokens (account access info)
$userdata = $facebook->api('/me/accounts', 'GET', $token);
// Loop through the data and get the token for the page id..
foreach($userdata['data'] as $data) {
if ($data['id'] == $pageID) {
$pageAdminToken = $data['access_token'];
continue;
}
}
// THis is actually for a wall post, but just modify to whatever you want (you must have access_token as it is what authorizes the action for the page..
// compile the post
$WallPost = array(
'message' => 'Test post from my app!',
'access_token' => $pageAdminToken
); // you can also use 'picture', 'link', 'name', 'caption', 'description', 'source'....
//http://developers.facebook.com/docs/reference/api/
// post to wall (feed is wall post, just update to whatever you want to publish to)
$response = $fb->api($pageID . '/feed','GET',$WallPost);
?>
謝謝,這就是對的。根據你的回答,我的方式是/使用我的inifite_session_key獲取accessToken,並使用此令牌通過請求graph-api來獲取我的所有帳戶。在返回的帳戶中,我搜索了目標頁面,並使用此頁面的accessToken將事件發佈到頁面上作爲頁面。 – Denis 2011-03-09 11:18:25
你懂了!大聲笑現在爲什麼Facebook不得不讓這個過程如此破裂......我得到第二個令牌有助於確定代表特定頁面的應用程序 - 但仍然......在如此多的層面上,他們可以讓這個過程變得更加簡單.. – CarpeNoctumDC 2011-03-09 11:54:21
,如果你加入自己作爲負責人的頁面,不管你把將反映作爲頁面的名稱(如果我沒有記錯的話)。
要有它通過一個腳本來完成,你必須使用通過用戶應用程序令牌從用戶帳戶獲得的頁面令牌:) – CarpeNoctumDC 2011-03-09 09:22:17
我的經驗也是如此。雖然,現在他們可以選擇瀏覽Facebook作爲「頁面」。不過,我認爲lilsizzo是正確的。 – 2011-03-09 09:24:06
儘管腳本訪問因用戶訪問而異...... – CarpeNoctumDC 2011-03-09 09:30:53
http://stackoverflow.com/questions/5209233/facebook-api-how-to-publish-to-page-feed-while-user-is-offline-without-offline-a/5227048#5227048剛剛發佈了一些其他問題的信息(最終不是他的答案 - 但它應該可以幫助你)從本質上講,你授權應用程序管理帶有脫機預置的頁面(應用程序令牌不會過期)然後,你查詢用戶accoutn Pages令牌(本質上是應用程序令牌允許您爲頁面的用戶管理權限獲取令牌),然後使用該令牌將頁面發佈爲頁面... – CarpeNoctumDC 2011-03-09 09:24:18
添加了我指出的其他答案的縮寫版本。基本上,如果您更改密碼或令牌過期,您將需要更新它...但下面的答案應該讓你在正確的方向。 – CarpeNoctumDC 2011-03-09 09:52:20