2017-02-26 8 views
0

こんにちは、私は直接私のページのステータスを公開しようとすると、ステータスはOKですが、私のFacebookのプロフィールで非常にうまく動作するAPIを作成し、投稿は訪問者の出版物に何をする私がやります ?Facebook SDKのステータス/ページ

私はFacebook Graph APIを見ましたが、これはCurlを使用してバイパスすることができるバグです。

PS/Iは、以下の情報ページID、アプリケーションID、秘密のアプリあなたの助けを事前に

おかげ ステファニー

public function statutPage(){ 

    $fb = new Facebook([ 
     'app_id' => 'my app id', 
     'app_secret' => 'my app secret', 
     'default_graph_version' => 'v2.8', 

    ]); 

    $pageID='my page id,; 
    $token='A_VALID_USER_ACCESS_TOKEN'; 

    $attachment = [ 
     'access_token' => $token, 
     'message' => 'Premier message auto', 
     'name' => 'Première publication sur facebook', 
     'caption' => 'Legend sous le tire', 
     'link' => 'https://www.la-programmation.surleweb-france.fr', 
     'description' => 'Description du lien', 
     'picture' => 'https://www.google.fr/images/srpr/logo11w.png' 
    ]; 


    try { 
     $response = $fb->post('/'.$pageID.'/feed/', $attachment); 

    } catch(FacebookAuthorizationException $e) { 
     echo 'Graph retourne une erreur: ' . $e->getMessage(); 
     exit; 
    } catch(FacebookSDKException $e) { 
     echo 'Facebook SDK retourne une erreur: ' . $e->getMessage(); 
     exit; 
    } 

    $graphNode = $response->getGraphNode(); 

    echo 'Posté su Facebook avec l\'id: ' . $graphNode['id']; 

} 
+0

あなたの質問を編集して、いくつかの 'コードサンプル'を提供してください**と**あなたが達成したいシナリオを提供してください。 Facebook Graph APIのドキュメント自体も見てください。必要な効果を得るための代替パラメータを用意する必要があるかもしれません。 –

+0

_ "私はFacebook Graph APIを見ました。これはバグ" _ナンセンスだと思われます。実際、あなたは十分に慎重に文書を読んでいませんでした。 https://developers.facebook.com/docs/graph-api/reference/v2.8/page/feed#publish – CBroe

+0

返信いただきありがとうございます。私はドキュメントを読み直しましたが、これはページ上では動作しません...プロフィールに問題はありません!当面はページ上にステータスを公開する解決策が見つかりませんでした。 –

答えて

0

ノート apparanltyコードは、ユーザープロファイルのみ」の作品に編集しました"と"ページ "ではありません。ページの扱い方に関する情報が必要な場合は、Facebook SDK v5 Post as Page on Wallにある回答を見てください!


しかし、それは言われていると、グラフAPI 5.0にフィードを公開するためReading the Facebook PHP Developers Docsは、私は彼らがFacebookRequestオブジェクトを使用しているし、それに方法executeを実行参照してください。ただし、deprecated in versions higher than 4と思われるGraphObjectを返します。

また、自動投稿にログインしたアカウントでは、publish_actionsのアクセス許可があることにも言及しています。

グラフAPI 5.0用facebook /feed/ SDK docsからリファレンスPHP SDKコード(URLスクロールでダウン '出版' へ) - deprecated in versions higher than 4ようだ - それはGraphObjectを返すことノート。 - getGraphNodeの例をhttps://developers.facebook.com/docs/php/FacebookRequest/5.0.0で参照してください。

/* PHP SDK v5.0.0 */ 
/* make the API call */ 
$request = new FacebookRequest(
    $session, 
    'POST', 
    '/me/feed', 
    array (
    'message' => 'This is a test message', 
) 
); 
$response = $request->execute(); 
$graphNode = $response->getGraphNode(); 
/* handle the result */ 

代わりに、彼らはまた、Publish with Graph APIへのリンクによって直接グラフAPIを使用して言及。

+0

*クラスGraphObject * package Facebook * *廃止5.0.0 GraphObjectの名前がGraphNodeに変更されました –

+0

悲しいことに、バグ/誤解のようです[facebook documentation for publishing](https://developers.facebook.com/docs/graph-api/reference/v2.8/user/feed#publish)で、実際には[5.0以降で廃止されました](https ://developers.facebook.com/docs/php/GraphObject/5.0.0) –

+0

@StéphanieCaumontはhttps://developers.facebook.com/docsに見られるように '$ response'に' getGraphNode'メソッドを使ってみてください/php/FacebookRequest/5.0.0 - 私は答えを編集しました。 –