在墙上发布的图像消失了

时间:2012-11-08 18:17:27

标签: facebook image

我正在使用以下命令发布一些图像:

    $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生成的。

这是发生的事情:

  • 我生成图像并将其保存到文件夹
  • 我将代码发布在
  • 我退出剧本
  • 下次运行脚本(每小时)我删除所有旧的
  • 重复wath sayid创建的图像

我注意到刚刚发布的图像存在并存在于FB墙上

BUT

下次我启动脚本时(所以图片从我的网站上删除)它们也会从Facebook上消失

我明白上传到Facebook的图片,所以我的空间不再需要它们了....

不是这样吗?

我怀疑这也是因为,如果我在facebook上的红色x上看到(在图像的位置)

我右键点击“proprerties”,我可以阅读:

"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"

所以它似乎真的是原始图像的链接 你能解决我的疑问吗?

2 个答案:

答案 0 :(得分: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搜索的错过图像有关)< / p>

答案 1 :(得分:0)

  

我明白上传到Facebook的图片,所以我的空间不再需要它们了....

事实并非如此。 Facebook只是将您的内容缓存在他们的CDN中。如果您删除源照片,当内容超出其缓存时,他们刷新/重新填充缓存的尝试将失败,您的用户将获得损坏的图像图标。

  

图像是否仍然存在?或者一旦发布,我可以删除它们,因为它们仍然存在于Fb上?

你不应该删除它们。