FB.getLoginStatus returns status unknown

Diego Cerdan Puyol picture Diego Cerdan Puyol · Apr 6, 2014 · Viewed 20.7k times · Source

When calling FB.getLoginStatus using a valid Facebook App the response status is always unknown. Exact response is {authResponse: undefined, status: "unknown"}.

<html>
<body>
    <div id="fb-root"></div>

    <script>
    window.fbAsyncInit = function(){
        FB.init({ appId:'1484134468466778', status:true,  cookie:true, xfbml:true});
        FB.getLoginStatus(function(response){
        console.log(response);
        });
    };

    (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>
</body>
</html>


Example URL: http://media.tuentifotos.com/simple_test.html


Here a screenshot of the Facebook App Settings. Facebook App Settings

Answer

Flimzy picture Flimzy · Jun 2, 2015

This was happening for me in Chrome, and was because Chrome was configured to block third-party cookies and data.

Once I made that configuration change, FaceBook is able to log me into my app without a problem.

  • Chrome Settings
  • Show advanced settings...
  • Privacy
  • Content settings...
  • uncheck Block third-party cookies and site data