2012-07-30 14 views
22

Ho configurato il mio server per ricevere aggiornamenti in tempo reale da Facebook, ho passato l'autenticazione per ottenere il token ecc, ho registrato l'url di richiamata ... e non ho ricevuto un solo avviso dalla richiesta di autenticazione GET.Non riceve affatto aggiornamenti in tempo reale da Facebook

Quando ho GET graph.facebook.com/APP-ID/subscriptions ricevo ...

data: [ 
{ 
    object: "user", 
    callback_url: "REDACTED-VAID-URL", 
    fields: [ 
    "activities", 
    "books", 
    "checkins", 
    "events", 
    "feed", 
    "friends", 
    "interests", 
    "likes", 
    "location", 
    "movies", 
    "music", 
    "television" 
    ], 
    active: true 
} 
] 

Quindi, per quanto mi riguarda posso dire la notifica in tempo reale è configurato correttamente. Quando invio il mio POST all'URL di richiamata, il server mi invia ogni volta i dettagli del POST, ma non l'ho mai ricevuto dopo un aggiornamento di Facebook, quindi sono abbastanza sicuro che non stia toccando l'URL. Ho diversi utenti autenticati con l'app, tutti abbiamo provato varie cose su Facebook per provarlo e attivarlo (aggiornamento di stato, post, come ecc.). Posso inserire il loro feed ecc. Dalla normale API di riposo.

Deve esserci qualcosa che mi manca qui, cos'altro devo fare per farlo funzionare ?!

+1

Im esattamente quanto hai ottenuto su questo. Sono riuscito a impostare correttamente un abbonamento, ma non ricevo alcuna notifica che sia mai stato così .. Upvoted! –

+0

Eventuali aggiornamenti su questo problema? –

+1

Non proprio una risposta, ma, in risposta al mio commento di Alexander su questo e sui problemi correlati: temo di non avere molto da offrire. Supponendo che la tua app su Facebook sia correttamente configurata (cosa che sembra essere, dato che stai ricevendo le corrette informazioni di iscrizione), il mio unico pensiero è quello di assicurarmi che i risultati di Facebook siano in grado di passare attraverso la tua rete/firewall/etc/al tuo server. Vengono visualizzati altri successi di Facebook? Hai provato a inviare l'URL di callback da qualche posto al di fuori della tua rete immediata? Scusa non posso essere più d'aiuto ... –

risposta

3

Per coloro che utilizzano PHP ...

dati in tempo reale il post di Facebook non sono disponibili in o essere riconoscibili tramite la normale array $ _POST in PHP. È possibile utilizzare il seguente per ottenere il JSON prime che compongono la richiesta al server:

$json = file_get_contents("php://input"); 

è quindi possibile convertire questo in un array semplicemente:

$realtime = json_decode($json, true); 

E 'un peccato, però, che i dati che Facebook ti dà in queste richieste sono per lo più inutili: -/

+1

+1 per il suggerimento su come ottenere i dati POST. Inoltre, i dati forniti da Facebook non sono affatto inutili. Ti dicono quale oggetto ha avuto una modifica e poi tocca a te fare un'altra chiamata al grafico per ottenere i dati aggiornati. –

+0

Sono stato corretto. Verissimo. –

0

Nel mio caso accettavo richieste GET ma non accettavo richieste POST sull'URL di richiamata.

Problemi correlati