简体   繁体   中英

facebook realtime subsciption API error

I'm using this link in order to add new subsciption entry:

https://graph.facebook.com/XXX/subscriptions?access_token=YYY&object=payments&callback_url=http://xxx/rlcallback.php&fields=actions,disputes&verify_token=ZZZ

For some reason, I get error:

{
   "error": {
      "message": "(#100) Invalid object. object should be url or open graph object id.",
      "type": "OAuthException",
      "code": 100
   }
}

But the object "payments" inside my link is clearly valid. What am I missing here?

Make sure you are using the correct parameters: object, callback_url, fields, verify_token...and of course the access_token.

Also (and that may be the problem in this case), you have to use POST, not GET . You can either use CURL with POST to subscribe to the Realtime API, or you just use one of the SDKs as explained in the Facebook docs: https://developers.facebook.com/docs/graph-api/reference/v2.1/app/subscriptions

Here is one example with CURL:

$appsecretProof = hash_hmac('sha256', FBAPPID . '|' . FBSECRET, FBSECRET);
$ch = curl_init();
curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 10);
curl_setopt($ch, CURLOPT_TIMEOUT, 60);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_USERAGENT, 'facebook-php');
$postData = 'object=page' .
    '&callback_url=' . urlencode('http://yourdomain.com/callback.php') .
    '&fields=feed' .
    '&verify_token=somethingfancy' .
    '&access_token=' . FBAPPID . '|' . FBSECRET .
    '&appsecret_proof=' . $appsecretProof;
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/' . FBAPPID . '/subscriptions');
curl_setopt($ch, CURLOPT_POSTFIELDS, $postData);
$curlResult = curl_exec($ch);

you need to specify object, callback_url, fields and verify_token parameters as your curl post parameters

example: curl -F 'object=user' \\ -F 'callback_url=' \\ -F 'fields=checkins' \\ -F 'verify_token=' \\ " https://graph.facebook.com/ /subscriptions?access_token=

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM