2015-06-05 9 views
7

Stiamo provando a postare da PHP a Facebook, stiamo usando HybridAuth ma la domanda non è correlata ad esso. -posting al profilo utente, funziona bene, anche quando si utilizza l'immagine e il collegamento -posting per le pagine di lavoro compresa l'immagine (ma non con il collegamento) Cosa non funziona -posting alla pagina quando si imposta un collegamento (l'url non è il problema dal momento che funziona distacco al profilo utente)Errore di invio messaggio con collegamento a Facebook

l'errore è un errore generico, che non aiuta a tutti, grazie agli sviluppatori di Facebook per averci dato la briga di indovinare ciò che è sbagliato

{"error":{"message":"An unknown error has occurred.","type":"OAuthException","code":1}} 

Ho anche creato uno script semplice usando curl per testarlo senza coinvolgere il codice HybridAuth e Ho lo stesso errore

<? 
$access_token = "xxxxxx"; 
$page_id="352300454896456"; 
$msg = "test message ".time(); 
$title = "test title"; 
$uri = "http://www.example.com"; 
$desc = "test description"; 
//$pic = "http://ploscariu.com/simion/programming/kudani/kudani.png"; 

$attachment = array(
    'access_token' => $access_token, 
    'message' => $msg, 
    'name' => $title, 
    'link' => $uri, 
    'description' => $desc//, 
//'picture'=>$pic, 
//'actions' => json_encode(array('name' => $action_name,'link' => $action_link)) 
); 

$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, 'https://graph.facebook.com/'.$page_id.'/feed'); 
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE); 
curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 2); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, $attachment); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); //to suppress the curl output 
$result = curl_exec($ch); 
print_r($result); 
curl_close($ch); 
?> 

La mia domanda è, cosa c'è di speciale in questo parametro "link" e nell'inserimento di pagine? abbiamo bisogno di qualche permesso non documentato? o è solo una grafico API bug mi chiedo se abbiamo bisogno di token diverso delle PMI per la pubblicazione di link, ma di solito problema di autorizzazione tornare un buon messaggio di errore

enter image description here

nell'immagine è il risultato dello strumento di debug sul access_token Ottengo dalla chiamata HybridAuth, ho provato utilizzando un token di accesso breve che utilizzo API JS e la pubblicazione con quello funziona, ma il token di accesso breve non è una soluzione

Le informazioni nell'immagine, sul token che non ha mai scade vero? Come posso ottenere tale token utilizzando l'API http e arricciare (senza SDK)

+0

Non ci sono campi come 'name' o' decsription' in base a [documenti FB] (https://developers.facebook.com/docs/graph-api/reference/v2.3/page/feed). –

risposta

4

Ho trovato il problema, era il access_token, so che non ha senso che ha funzionato senza il parametro di collegamento, ma con il parametro di collegamento ha fatto non ha funzionato, ma questa è la verità. Quindi è necessario assicurarsi di ottenere la pagina access_token, si ottiene che da me/accounts o con il tuo SDK. La conclusione è che gli sviluppatori di Facebook stanno facendo un brutto lavoro, messaggi di errore errati e permettendo di pubblicare con un token errato.