Facebook分享者拒绝goo.gl链接

时间:2012-07-22 18:48:30

标签: facebook hyperlink share short

我正在开发Android html5应用程序,我想在Facebook上分享一个很长的网址,如:

  

http://api.myserver.com/share.php?key= [MD5 HASH]

所以我第一次尝试:

  

https://m.facebook.com/sharer.php?u=http://api.myserver.com/share.php?key= [MD5 HASH]

(将长链接URL编码为参数)但它没有用,它说:找不到链接。

我认为它可能与包含链接的长MD5哈希有关,所以我使用goo.gl API来缩短它。它返回一个字符串,如:

  

http://goo.gl/xxxxx

我已经测试了Google API返回的缩短链接,并且它们存在。 所以我再次尝试使用Facebook:

  

http://m.facebook.com/sharer.php?u=http://goo.gl/xxxxx

但同样的事情又发生了。

为什么会这样?我试图用goo.gl缩短一些Instagram网址(例如),然后......猜猜是什么?它适用于Facebook!

我真的不明白我的网址有什么问题。

1 个答案:

答案 0 :(得分:2)

您所要做的就是将要传递的网址编码为参数。

在javascript中,您可以使用encodeURIComponent执行此操作。

事实上,第一次尝试会发生的事情是,由于URL / URI规范,哈希被视为facebook的共享者网址的参数。

必须“url编码”在网址中传递的不同数据。