Feed对话框:图片未显示。

8

我的Facebook feed dialog链接可以正确地呈现一个对话框页面,但是使用picture参数设置的图片不会显示出来——只有表明没有图片的灰色线条。

我已经多次更换过图片文件和类型,但是图片仍然无法显示。

以下是代码:

$share_url = "https://www.facebook.com/dialog/feed?app_id=$app_id";
$share_url .= "&link=http://www.doozeez.com";
$share_url .= "&picture=http://doozeez.com/images/halloweenloot.png";
$share_url .= "&caption=to spend in the biggest rewards program in the www (whole wide world)";
$share_url .= "&name=doozeez ... get zeez for what you dooz";
$share_url .= "&description=grab your invitation to join me at the front of the line for doozeez launch";
$share_url .= "&redirect_uri=http://www.doozeez.com/";
echo("<script> top.location.href='" . $share_url . "'</script>");

我已经尝试过使用urlencode()和不使用urlencode()来处理图片url,但这并没有区别。我还通过Facebook调试器进行了测试。
我们需要在php.ini文件中做出一些更改吗?我们的图片似乎无法被Facebook平台访问。然而,在公共网络上它们可以正常显示。
以下是渲染后的URL:https://www.facebook.com/dialog/feed?app_id=192590464145496&link=http://www.doozeez.com/&picture=http://doozeez.com/images/halloweenloot.png&caption=to%20spend%20in%20the%20biggest%20rewards%20program%20in%20the%20www%20(whole%20wide%20world)&name=doozeez%20...%20get%20zeez%20for%20what%20you%20dooz&description=grab%20your%20invitation%20to%20join%20me%20at%20the%20front%20of%20the%20line%20for%20doozeez%20launch&redirect_uri=http://www.doozeez.com/
8个回答

1
如果其他人遇到此问题,请注意Facebook需要您的图像具有扩展名(即使您已经使用正确的标头)。即使您的图像在不带扩展名(如.png.jpg)的情况下在lint工具中工作,这也是正确的。

1

我遇到了一个类似的问题,是关于 .png 图片的。

我把图片格式改为了 .gif,问题得以解决。


0
万一有人还在寻找答案的话,我发现我的域名开启了防盗链保护功能,这就是为什么所有图片都不能被直接引用的原因。所以为了让Facebook能够直接引用我的图片,我必须关闭防盗链保护功能。另一个选择是只将facebook.com添加为例外,以便可以热链接您的图片(我认为这个方法更好)。
我的网络托管服务提供商是Godaddy。

0
一个我遇到的替代问题是,我已经将图片分享到 Facebook 上,并在那时启用了网站的身份验证,然后我禁用了它。但是当我尝试与 Facebook 分享时,它似乎缓存了之前的问题,这就导致了问题。更改文件名或稍后再试即可解决问题。在我的情况下,我删除了该图像并创建了一个新的(它们是动态的)。

0
对我来说:在URL字符串中,我使用了小写的.jpg,但实际的图像文件是大写的`.JPG'。

0

对我来说,解决这个问题的方法是将协议从https更改为http并且将图像格式从png更改为jpg


0

1
弗雷德里克,我应该在 .htaccess 中更改哪个设置以允许 Facebook 和其他服务器访问我的图片? - Bill Scheurer
请展示您的htaccess文件,以便查看是否存在任何问题。 - Frederick Behrends
以下是 .htaccess 的内容:Action application/x-pair-sphp /fcgi-bin/php5.cgi AddType application/x-pair-sphp .php Options -Indexes没什么内容。我想知道我们是否需要更改 php.ini 文件中的某些设置,以允许其他服务器访问我们的图像文件? - Bill Scheurer
我开始怀疑这个网站是否没有SSL证书(尽管它不是画布应用程序,不应该需要一个)。因为URL不断地恢复到“https://”,而图像文件是“http://”链接。我会获得一个SSL证书并再次尝试。 - Bill Scheurer

0

自2011年10月1日起,每个页面选项卡都需要使用https。

https://developers.facebook.com/roadmap/

但是我的图片在动态消息对话框中没有显示出来,尽管它已经在 Facebook 调试控制台中显示出来了... :S


我刚刚从https更改为http,现在它可以工作了。但是我们为该域名获得了有效的SSL证书。耸肩 但这并不重要 - http可以正常工作。 - Jurik

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接