如何使用Facebook测试应用程序进行Facebook登录-Web JavaScript

如何使用Facebook测试应用程序进行Facebook登录-Web JavaScript,javascript,facebook-login,facebook-apps,Javascript,Facebook Login,Facebook Apps,这是我第一次写JavaScript。。。。我使用JSBin作为IDE。我正在尝试使用JavaScript允许用户登录并在Facebook Graph API中获取他们的公共数据 我创建了一个Facebook Web应用程序,然后为此应用程序创建了一个测试应用程序。这两个应用程序都不起作用。对于这些应用程序中的每一个,我都创建了一个测试用户,如下所示: 以下是我失败的原因…… 第一次尝试: 我已选中此项,将应用程序id更改为我自己的应用程序id,并将版本更改为2.6作为我的应用程序设置。但是,问

这是我第一次写JavaScript。。。。我使用JSBin作为IDE。我正在尝试使用JavaScript允许用户登录并在Facebook Graph API中获取他们的公共数据

我创建了一个Facebook Web应用程序,然后为此应用程序创建了一个测试应用程序。这两个应用程序都不起作用。对于这些应用程序中的每一个,我都创建了一个测试用户,如下所示:

以下是我失败的原因……

第一次尝试: 我已选中此项,将应用程序id更改为我自己的应用程序id,并将版本更改为2.6作为我的应用程序设置。但是,问题是,在JSBin上,没有显示任何内容

第二次尝试: 然后我找到了,我修改了代码,使之像这样

<html>
<body>
<div id="fb-root"></div>
<script>
window.fbAsyncInit = function() {
FB.init({
appId      : '1814637902090044',
cookie     : true,  
xfbml      : true,  // parse social plugins on this page
version    : 'v2.6' // use graph api version 2.6
});

FB.Event.subscribe('auth.authResponseChange', function(response) 
{
 if (response.status === 'connected') 
{
    document.getElementById("message").innerHTML +=  "<br>Connected to Facebook";
}    
else if (response.status === 'not_authorized') 
{
    document.getElementById("message").innerHTML +=  "<br>Failed to Connect";
} else 
{
    document.getElementById("message").innerHTML +=  "<br>Logged Out";
}
}); 

};

function Login()
{
    FB.login(function(response) {
       if (response.authResponse) 
       {
            getUserInfo();
        } else 
        {
         console.log('User cancelled login or did not fully authorize.');
        }
     },{scope: 'email'});
}

  function getUserInfo() {
    FB.api('/100012237662406', function(response) {
    var str = "<b>Email:</b> "+response.email+"<br>";
    document.getElementById("status").innerHTML=str;

});
}


 // Load the SDK asynchronously
 (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, ref);
 }(document));

 </script>
 <div align="center">
 <h2>Facebook OAuth Javascript Demo</h2>

  <div id="status">
Click on Below Image to start the demo: <br/>
 <img src="http://hayageek.com/examples/oauth/facebook/oauth- javascript/LoginWithFacebook.png" style="cursor:pointer;"   onclick="Login()"/>
 </div><div id="message">Logs:<br/>
  </div></div>
</body>

window.fbAsyninit=函数(){
FB.init({
appId:'1814637902090044',
曲奇:是的,
xfbml:true,//解析此页面上的社交插件
版本:“v2.6”//使用图形api版本2.6
});
FB.Event.subscribe('auth.authResponseChange',函数(响应)
{
如果(response.status===“已连接”)
{
document.getElementById(“消息”).innerHTML+=“
连接到Facebook”; } else if(response.status===“未授权”) { document.getElementById(“消息”).innerHTML+=“
连接失败”; }否则 { document.getElementById(“消息”).innerHTML+=“
注销”; } }); }; 函数登录() { FB.登录(功能(响应){ if(response.authResponse) { getUserInfo(); }否则 { log('用户取消登录或未完全授权'); } },{范围:'电子邮件'}); } 函数getUserInfo(){ FB.api('/100012237662406',函数(响应){ var str=“电子邮件:“+响应.电子邮件+”
”; document.getElementById(“status”).innerHTML=str; }); } //异步加载SDK (职能(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,ref); }(文件); Facebook OAuth Javascript演示 单击下图开始演示:
日志:

如您所见,我正在使用我的测试应用程序的应用程序id,用户是我的测试用户id,但当我单击按钮时,总是会出现此错误

第三次尝试: 由于上面的错误显示“应用程序处于开发模式…”,我检查了这两个解决方案:。但我真的无法在
应用程序审查
中找到这些选择,也无法找到
状态和审查
。在测试应用程序时,它甚至没有
应用程序审查
。然后我试着像这样公开我的应用程序

但后来我发现了一个错误:

以下是url设置:

对于该重定向URL,我也尝试了
http://localhost/oauthcallback.html
,但也不起作用。我没有任何真正的url可以用于重定向

我认为,如果没有
App Review
的测试App可以用来测试Facebook登录,可能不是
App Review
中的设置问题。 您知道如何解决这个问题,以便我的Javascript允许用户登录并在Graph API中向我发送他们的公共数据吗