我为Facebook SDK找到的大多数示例和教程都是用于发布到用户帐户.
作为使用Facebook PHP SDK但不使用Javascript SDK的人,我找不到以下示例或教程:
在我的网站上,我不打算将信息发布到管理员的粉丝页面,而只是获取他们想要用于我的网站的页面的ID.感谢PHP SDK,我已经有了一种从管理员的粉丝页面中提取所需信息的方法.
有这样的指南吗?
facebook-page facebook-graph-api facebook-javascript-sdk facebook-php-sdk
我有一个带有Facebook登录按钮的基本HTML页面.下面的ID是我在开发人员门户中创建的应用程序的ID.当我运行此页面时,它只显示文本"使用Facebook登录"而不是实际按钮.我知道它没有成功初始化SDK,但我不知道发生了什么.有任何想法吗?
<html>
<head>
<title>My Facebook Login Page</title>
</head>
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId : '232894623452511',
status : true,
cookie : true,
xfbml : true,
oauth : true,
});
};
(function(d){
var js, id = 'facebook-jssdk'; if (d.getElementById(id)) {return;}
js = d.createElement('script'); js.id = id; js.async = true;
js.src = "//connect.facebook.net/en_US/all.js";
d.getElementsByTagName('head')[0].appendChild(js);
}(document));
</script>
<div class="fb-login-button">Login with Facebook</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我一直在研究这个主题,但找不到Javascript SDK的任何内容.我找到了PHP和C#的例子,但我仍然不确定Javascript SDK.据我所知,您设置了一个包含JS SDK的页面,将其放入deauthorize回调URL并订阅该页面上的authResponseChange事件.
这是我能说的最好的,但是我没有找到任何例子或确认这种方法是否有效.如果可以提供任何精彩的例子.
我在Javascript测试控制台上测试了这个:http://developers.facebook.com/tools/console/但该方法使用了旧的rest API的撤销授权.我们希望使用取消授权回调URL从用户帐户中删除Facebook关联.
我有一个带有邀请按钮(又名FB.ui - > apprequests)的页面选项卡应用程序,当它运行example.com/pagetab正常时(即,它弹出一个FB.ui朋友选择器窗口等)但是当我指向我的应用程序的页面选项卡时到那里并从Facebook内部加载iframe,没有任何反应.起初我认为按钮没有链接是一个问题,因为jquery不知道哪个文件已经准备就绪但是我转而使用onclick甚至从Chrome控制台输入命令(当然在iframe的范围内)但是没有任何反应......这是一个错误还是我错过了什么?
最小代码:
window.fbAsyncInit = function() {
FB.init({
appId : '123456789', // App ID
channelUrl : '//fbjscache.php', // Channel File
status : true, // check login status
cookie : true, // enable cookies to allow the server to access the session
xfbml : true // parse XFBML
}); };
(function(d){
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 = "//connect.facebook.net/en_US/all.js";
ref.parentNode.insertBefore(js, …Run Code Online (Sandbox Code Playgroud) 我希望在用户点击链接后显示facebook登录/注册框,但它不起作用.Parse应该使用自己的init函数加载FB SDK,并且应该使用自己的另一个函数显示登录框.我直接从他们的文档中复制并粘贴了代码,因此我认为这不是语法问题.我也尝试在不同的地方初始化Parse SDK,但似乎并不重要.我知道jquery函数正在运行,因为我已经使用警报功能测试它,当我点击目标链接时它会触发,但是登录框不会显示.
我需要修理什么?
>
<body>
<div id="fb-root"></div>
<script>
// Initialize the Parse SDK!
Parse.initialize("***********","***********");
window.fbAsyncInit = function() {
//initialize Facebook SDK via Parse
Parse.FacebookUtils.init({
appId : '***********', // App ID from the App DashboardD
channelUrl : '//http://spilot.koding.com/channel.html', // Channel File for x-domain communication
status : true, // check the login status upon init?
cookie : true, // set sessions cookies to allow your server to access the session?
xfbml : true // parse XFBML tags on this page?
}); …Run Code Online (Sandbox Code Playgroud) 我有两个单独的js文件,domready.js和fb-jssdk.js.
jssdk处理加载sdk和登录.它在用户登录时从response.state返回正确的状态,具体取决于方案.
我感到困惑的是我如何使用FB响应中获得的数据和FB.api来获取用户登录时的名称和电子邮件,并使用jQuery在我的网站上使用它.
编辑: 我想知道如何在fb代码所在的单独的js文件中使用响应的内容,并将其与jQuery事件处理程序一起使用.
因此,如果我有一个名为testAPI()的函数将response.name输出到控制台,那么如何在另一个文件中获取response.name ="Kryptonite Dove"的数据呢?
testAPI()
function testAPI() {
console.log('Welcome! Fetching your information.... ');
FB.api('/me', function(response) {
console.log('Good to see you, ' + response.name + '.');
var state = response.name;
return response.name;
});
}
Run Code Online (Sandbox Code Playgroud)
一些功能
$("#id").click(function() {
if (response.name == "Kryptonite Dove") {
// Do something
}
});
Run Code Online (Sandbox Code Playgroud) javascript jquery facebook facebook-graph-api facebook-javascript-sdk
FB not defined使用Facebook Javascript SDK时出错
FB.init({
appId: '{APP ID}',
status: true,
cookie: true,
xfbml: true
});
Run Code Online (Sandbox Code Playgroud)
javascript facebook facebook-graph-api facebook-javascript-sdk
我只需要基本权限"email","public_profile","user_friends",我需要所有这些权限才能使我的应用程序正常运行.
FB登录将用户带到权限页面,他/她可以取消选中email和user_friends,我将不得不单独处理它.
是的,我确实理解这里的信任等式已经在很多关于SO的问题中讨论过了.但很多应用程序都在某种程度上绕过了这个问题.例如优步

我试图制作一个 facebook 分享按钮,当我点击它时会弹出一个小窗口,就像附加的图片一样。
我在 developer.facebook.com 上找到了这样做的方法,但问题是我根本无法自定义该按钮,我想制作自己的具有特定宽度、高度、背景图像、文本等的按钮。但看起来这无法完成,对包含共享按钮的 div 类的任何更改都会禁用其功能或至少不会弹出。我用谷歌搜索了这个问题,但找不到任何明确的解决方案,甚至 StackOverflow 上的类似问题也没有清楚地说明问题,也没有答案。
有没有使用 Javascript、Jquery 甚至引导程序来做到这一点?这是我的代码:
<html>
<head>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.1/jquery.min.js"></script>
<script src='http://connect.facebook.net/en_US/all.js'></script>
</head>
<body>
<div id="fb-root"></div>
<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/sdk.js#xfbml=1&version=v2.9";
fjs.parentNode.insertBefore(js, fjs);
}(document, 'script', 'facebook-jssdk'));
</script>
<div class="fb-share-button" data-href="https://developers.facebook.com/docs/plugins/" data-layout="button_count" data-size="large" data-mobile-iframe="true">
<a class="fb-xfbml-parse-ignore" title="Facebook share" target="_blank" href="https://www.facebook.com/sharer/sharer.php?u=https%3A%2F%2Fdevelopers.facebook.com%2Fdocs%2Fplugins%2F&src=sdkpreparse">Share</a>
</div>
</body>
</html>
Run Code Online (Sandbox Code Playgroud) 我创建了一个 Facebook 即时游戏,最后有一个分享按钮,如何让该分享按钮分享结果或链接中的照片,以便在玩家的个人资料上玩游戏。这是我的 shareAsync() 函数代码,它不会产生 javaScript 错误,但仍然不起作用。
$(document).on("click", ".share-result", function(){
FBInstant.shareAsync({
intent: 'INVITE',
image: img,
text: 'Play this Awesome game',
data: {myReplayData: '...'},
}).then(function() {
location.reload();
});
});
Run Code Online (Sandbox Code Playgroud) javascript jquery facebook facebook-javascript-sdk facebook-instant-games