0

Facebookでガイドのリアルタイム更新をフォローしました。
私のアプリケーションはタブページです。
サンドボックス環境を利用しています。
ダッシュボードの署名によって初期設定されます。
コールバック URL エンドポイントの検証は正常に機能します。テストのみのページに投稿しました。
しかし、これまで (24 時間後)、Facebook からの更新投稿はありませんでした。
Log Apache サーバーでは、facebook からの投稿もありません。私のコールバックスクリプト:

<?php
define('UPD_FILE', 'updates.log');
$method = $_SERVER['REQUEST_METHOD'];
global $log_file;

if ($method == 'GET' && $_GET['hub_mode'] == 'subscribe' && $_GET['hub_verify_token'] == 'jogabonito') {
   echo $_GET['hub_challenge'];
   exit;
}
else if ($method == 'POST')
{
    $log_file=UPD_FILE;
    $updates = json_decode(file_get_contents("php://input"), true); 

    logToFile("updates =".print_r($updates));
}
function logToFile($message){
    global $log_file;

    $hdl = fopen($log_file, 'a') or die ("couldn't open log file");
    fwrite($hdl,$message."\n");
    fclose($hdl);
}
?>

注目してくれてありがとう

4

2 に答える 2

0

私は同じ問題に直面していましたが、以下の解決策で問題が解決しました。

次の URL に POST リクエストを送信するだけです。

https://graph.facebook.com/PAGE_ID/tabs?app_id=APP_ID&access_token=PAGE_ACCESS_TOKEN

リクエストを行う前に値を置き換えてください

于 2014-12-11T07:13:55.870 に答える
0

いくつかの要件が満たされた後、コードは (ある程度) 正常に動作します。

  1. 少なくとも 1 つのフィールド変更を正常にサブスクライブしました。
  2. テスト対象のユーザーは、サブスクライブしているフィールドに必要な権限の一部またはすべてをアプリに付与しています。

上記のいずれかが適切に処理されない場合、関連する変更について通知されません。

関数がデータを出力するのではなくデータを返すように指定せずに、print_r を使用して配列の内容をダンプしているため、別のメモとして「ある程度」と書きました。あなたが今持っている方法は、「1」という結果になります。

必要なものは次のようになります。

logToFile("updates =".print_r($updates, true));
于 2013-11-04T15:31:25.497 に答える