通过javascript分享照片到Facebook

时间:2014-01-23 01:06:48

标签: javascript facebook

我正在使用一个非常简单的JavaScript来共享Facebook墙的URL:

window.open('https://www.facebook.com/sharer/sharer.php?u='+something);

这允许用户在Facebook确认窗口中完成共享。但是,现在我需要以类似的方式分享图像 我也正在使用open graph protocol来正确显示我的网站的脸谱。但是使用正确的facebook标签调用预览是没用的:

enter image description here
我想知道:我如何强迫facebook以英文出现?

是否可以将网站作为图片共享或直接通过网址共享图片?

如果可能的话,我不想在我的网站上没有Facebook API脚本,以及任何iframe或其他丑陋的外部内容。
我也不想知道用户在共享窗口中做了什么。

3 个答案:

答案 0 :(得分:1)

您需要在页眉中使用图片元标记。 (将您的图片网址添加到facebook og:图片元标记,依此类推等等)

<!-- for Google -->
<meta name="description" content="" />
<meta name="keywords" content="" />

<meta name="author" content="" />
<meta name="copyright" content="" />
<meta name="application-name" content="" />

<!-- for Facebook -->          
<meta property="og:title" content="" />
<meta property="og:type" content="article" />
<meta property="og:image" content="" />
<meta property="og:url" content="" />
<meta property="og:description" content="" />

<!-- for Twitter -->          
<meta name="twitter:card" content="summary" />
<meta name="twitter:title" content="" />
<meta name="twitter:description" content="" />
<meta name="twitter:image" content="" />

答案 1 :(得分:0)

你尝试过使用这个吗?

在身体后添加

    <div id="fb-root"></div>
    <!-- FB Like -->
    <script>(function(d, s, id) {
          var js, fjs = d.getElementsByTagName(s)[0];
          if (d.getElementById(id)) return;
          js = d.createElement(s); js.id = id;
          js.src = "//connect.facebook.net/en_US/all.js#xfbml=1";
          fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));
    </script>

这是您的分享按钮出现的位置

  

&LT; div class =“fb-share-button”data-type =“button_count”&gt;

答案 2 :(得分:0)

我能想到的一种方式是以Facebook帖子的形式分享图像。但同样,它需要使用Facebook API。无论如何,我将在这里分享这个方法,你可以使用它,以防你想使用Facebook API。

为此,您可以向/{user-id}/feed端点发出POST请求。例如:

me/feed?message="Test"&link={Image_URL}&access_token={User_Access_Token}

此方法需要具有publish_stream权限的有效User Access Token