Javascript 如何使用FB.login()获取facebook的用户信息

Javascript 如何使用FB.login()获取facebook的用户信息,javascript,jquery,facebook,facebook-javascript-sdk,Javascript,Jquery,Facebook,Facebook Javascript Sdk,在我的代码中,我使用FB.login函数登录用户。使用下面的响应变量,我只能访问用户ID。是否可以检索用户名和电子邮件? 这是我的代码: <script> window.fbAsyncInit = function () { FB.init({ appId: '531991481003168', cookie: true, xfbml: true, version:

在我的代码中,我使用FB.login函数登录用户。使用下面的响应变量,我只能访问用户ID。是否可以检索用户名和电子邮件? 这是我的代码:

<script>
    window.fbAsyncInit = function () {
        FB.init({
            appId: '531991481003168',
            cookie: true,
            xfbml: true,
            version: 'v5.0'
        });

        FB.AppEvents.logPageView();

    };

    (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 = "https://connect.facebook.net/en_US/sdk.js";
        fjs.parentNode.insertBefore(js, fjs);
    }(document, 'script', 'facebook-jssdk'));


</script>

<script async defer src="https://connect.facebook.net/en_US/sdk.js"></script>

<script type="text/javascript">
    function statusChangeCallback(response) {

        if (response.status !== "connected") {
            FB.login(function (response) {
                console.log(response);
            });    
        }
    }
    $(document).ready(function () {

        $("#btn-facebook").on("click", function() {
            FB.getLoginStatus(function (response) {
                statusChangeCallback(response);
            });
        });
    });
</script>
Facebook的文档真的很混乱,我找不到这么简单的东西。

登录后,使用获取其他数据:

FB.api('/me', {fields: 'name,email'}, (response) => {
    document.getElementById('response').innerHTML = 'Hello ' + response.name;
});

示例:

这很有帮助,谢谢,但现在我无法访问电子邮件数据,因为它不会出现在响应中。您没有授予任何其他权限。查看示例,您必须正确设置FB.login函数,并具有所需的权限。