1

次のコマンドを使用していくつかの画像を投稿しています。

    $url_facebook  = "https://api.facebook.com/method/stream.publish?message=".$messaggio."&attachment={\"name\":\"".$title."\",\"href\":\"".$action_link."\",\"caption\":\"".$caption."\",\"description\":\"".$description."\",\"media\":[{\"type\":\"image\",\"src\":\"".$image."\",\"href\":\"".$action_link."\"}]}&action_links=[{\"text\":\"".$link_name."\",\"href\":\"".$action_link."\"}]&target_id=".$target_uid."&uid=".$source_uid."&".$site_token."";
    simplexml_load_file("".$url_facebook."");

私が壁に投稿した画像 (グループ) は、PHP からオンザフライで生成されます。

これが起こることです:

  • 画像を生成してフォルダーに保存します
  • コードを付けて投稿します
  • スクリプトを終了します
  • 次回スクリプトを実行するとき (1 時間ごと)、以前に作成されたイメージをすべて削除します。

公開されたばかりの画像が存在し、FB ウォールに存在していることに気付きました

しかし

次回スクリプトを起動すると(そのため、画像はサイトから削除されます)、Facebookからも消えます

画像がFacebookにアップロードされたことを理解したので、私のスペースではもう必要ありません....

そうじゃない?

Facebookの赤いxが表示された場合(画像の代わりに)、私はこれも疑問に思っています

「プロパティ」を右クリックすると、次のように読むことができます:

"https://s-platform.ak.fbcdn.net/www/app_full_proxy.php?app=164286063695472&v=1&size=z&cksum=17f253305254403324260843c7a6989a&src=http%3A%2F%2Fwww.graficisismici.it%2FV6_00%2Ffacebook%2Ffacebook_link_285790.jpg%3F285790"

本当に元の画像へのリンクのようですが、疑問を解決できますか?

4

2 に答える 2

0

その間、新しい Graph Api を使用するようにスクリプトを変更しました

<?php

    $user = null;

    $facebook = new Facebook(array(
        'appId' => FACEBOOK_APP_ID,
        'secret' => FACEBOOK_SECRET,
        'cookie' => true
    ));

    $user = $facebook->getUser(); // Get the UID of the connected user, or 0 if the Facebook user is not connected.

    if($user == 0) {

            /**
             * Get a Login URL for use with redirects. By default, full page redirect is
             * assumed. If you are using the generated URL with a window.open() call in
             * JavaScript, you can pass in display=popup as part of the $params.
             * 
             * The parameters:
             * - redirect_uri: the url to go to after a successful login
             * - scope: comma separated list of requested extended perms
             */

            $login_url = $facebook->getLoginUrl($params = array('scope' => "publish_stream"));

            echo ("<script> top.location.href='".$login_url."'</script>");
    } else {
        $user_message = "Message";
        $titolo = "Titolo";
        $caption = "Caption";
        $link_name = "Link Name";
        $action_link = "Action Link";
        $testo = "Text";
        $image = "Image Link";

        $target_uid = "XXXXXXXX"; // ID where to publish    

        //HTTP POST request to PAGE_ID/feed with the publish_stream
        $post_url = '/'.$target_uid.'/feed';

            try {
                    $params = array(
                        'message' => $user_message,
                        'name' => $titolo,
                        'caption' => $caption,
                        'link' => $action_link,
                        'description' => $link_name,
                        'picture' => $image,
                        'actions' => array(
                                            array(
                                                'name' => $testo,
                                                'link' => $action_link
                                            )
                                        )  
                    );

                    $post = $facebook->api($post_url,"POST",$params);
                }
                catch (FacebookApiException $e) {
                   $result = $e->getResult();
                }

    }

?>

画像の質問について明確にしたいと思います。画像はまだ存在している必要がありますか? または、一度投稿したら、それらはまだ Fb に存在するため、削除できますか?

私の質問は、私のサイトのエラーログに (この投稿の上部にある古いスクリプトを使用しているときに) 404 エラーの行がたくさん表示されるという事実から生まれました (Fb から検索された欠落した画像に関連する)

于 2012-11-09T14:44:44.323 に答える
0

画像がFacebookにアップロードされたことを理解したので、私のスペースではもう必要ありません....

これはそうではありません。Facebook は、コンテンツを CDN にキャッシュするだけです。ソース写真を削除すると、コンテンツがキャッシュから削除されたときに、キャッシュを更新または再入力しようとしても失敗し、ユーザーには壊れた画像アイコンが表示されます。

画像はまだ存在している必要がありますか? または、一度投稿したら、それらはまだ Fb に存在するため、削除できますか?

それらを削除しないでください。

于 2013-07-19T08:06:05.247 に答える