我正在开发一个视频共享网站。
如您所知,如果您访问YouTube,请复制链接,将其粘贴到Facebook墙上或留言,然后您就可以在Facebook上播放而无需访问YouTube。据我所知,YouTube是唯一可以做到这一点的网站。例如,如果您从Vimeo复制链接并将其粘贴到Facebook上,它将显示为缩略图,您将无法从Facebook播放。
那么,当用户分享链接时,我是否可以使用API在我的Facebook网站上播放视频,或者此功能仅适用于YouTube?
答案 0 :(得分:3)
是的,有可能。您需要为您在给定视频上提供的每种视频格式托管一个具有正确的Open Graph Protocol元标记的网页。
然后有人需要在Facebook上分享该网址。 Facebook将抓取您的网站,解析元标记,并提供视频播放器。
提供更多视频格式,确保更好的跨浏览器兼容性。
在此处了解元标记:http://developers.facebook.com/docs/opengraph/
使用Facebook调试工具确保正确格式化元标记:http://developers.facebook.com/tools/debug
答案 1 :(得分:1)
据我所知,这取决于Facebook设计他们的系统,以便当他们看到YouTube网址时,它会巧妙地嵌入视频,这意味着用户不会被重定向。
答案 2 :(得分:1)
那么,当用户共享链接时,我是否可以使用API在我的网站上播放视频
@Eli,
是的,有一个API可以在Facebook上播放来自网站的视频,它被称为开放图谱协议。请阅读以下所有相关信息:http://ogp.me/可在https://developers.facebook.com/docs/opengraph/
找到其他文档请在下面找到一些示例代码,以帮助您入门,享受。
<!doctype html>
<!--[if lt IE 7]><html lang="en" class="no-js ie6"><![endif]-->
<!--[if IE 7]><html lang="en" class="no-js ie7"><![endif]-->
<!--[if IE 8]><html lang="en" class="no-js ie8"><![endif]-->
<!--[if IE 9]><html lang="en" class="no-js ie9"><![endif]-->
<!--[if (gte IE 9)|!(IE)]><!--><html lang="en" class="no_js"><!--<![endif]-->
<head>
<meta charset="utf-8">
<title></title>
<meta property="og:title" content="Title goes here">
<meta property="og:type" content="company">
<meta property="og:url" content="http://yourdomainhere.com/">
<meta property="og:image" content="http://yourdomainhere.com/og_image_that_shows_on_facebook.jpg">
<meta property="og:site_name" content="Your Site Name">
<meta property="fb:app_id" content="APP_ID_NUMBER_IF_YOU_HAVE_ONE">
<meta property="fb:admins" content="ADMIN_ID_NUMBER_FOR_FACEBOOK_ANALYTICS">
<meta property="og:description" content="Your description.">
<meta property="og:determiner" content="the" />
<meta property="og:locale" content="en_US" />
<meta property="og:locale:alternate" content="es_ES" />
<meta property="og:video" content="http://example.com/bond/trailer.swf" /><!--VIDEO SRC URL-->
<meta property="og:video:secure_url" content="https://secure.example.com/movie.swf" />
<meta property="og:video:type" content="application/x-shockwave-flash" />
<meta property="og:video:width" content="400" />
<meta property="og:video:height" content="300" />
</head>
<body>
<div id="fb-root"></div>
<script>
/*Facebook Connect JavaScript SDK http://developers.facebook.com/docs/reference/javascript/FB.init/*/
window.fbAsyncInit = function() {
'use strict';
FB.init({
appId : 'APP_ID_GOES_HERE', //App ID
channelURL : '//yourdomainhere.com/channel.php', //Channel File
status : true, //Check login status
cookie : true, //Enable cookies to allow the server to access the session
xfbml : true, //Parse XFBML
oauth : true, //Enable OAuth 2.0
login : true,
authResponse : true, //Object
frictionlessRequests : true
});
//Additional initialization code here
};
/*Load the Facebook Connect JavaScript SDK Asynchronously */
(function(d){
'use strict';
var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
if (d.getElementById(id)) {
return;
}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = document.location.protocol + '//connect.facebook.net/en_US/all.js';
ref.parentNode.insertBefore(js, ref);
}(document));
</script>
</body>
</html>