Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/symfony/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Symfony FOSFacebookBundle facebook#u登录按钮({';自动链接';:true})不';"t show",;注销“;成功登录后_Symfony_Fosuserbundle - Fatal编程技术网

Symfony FOSFacebookBundle facebook#u登录按钮({';自动链接';:true})不';"t show",;注销“;成功登录后

Symfony FOSFacebookBundle facebook#u登录按钮({';自动链接';:true})不';"t show",;注销“;成功登录后,symfony,fosuserbundle,Symfony,Fosuserbundle,我已经实现了FOSUserBundle+FOSFacebookBundle,我可以成功注册并登录为普通用户和facebook用户 以facebook用户身份登录后,将创建以下会话: fbm_uxxxxxx fbsr_uuxxxxxx 模板包含以下代码: {{ facebook_initialize({'xfbml': true, 'fbAsyncInit': 'onFbInit();'}) }} {{ facebook_login_button({'autologoutlink': true})

我已经实现了FOSUserBundle+FOSFacebookBundle,我可以成功注册并登录为普通用户和facebook用户

以facebook用户身份登录后,将创建以下会话:

  • fbm_uxxxxxx
  • fbsr_uuxxxxxx
  • 模板包含以下代码:

    {{ facebook_initialize({'xfbml': true, 'fbAsyncInit': 'onFbInit();'}) }}
    {{ facebook_login_button({'autologoutlink': true}) }}
    <script>
    function goLogIn(){
        window.location = "{{ path('fos_facebook_security_check') }}";
    }
    function onFbInit() {
        if (typeof(FB) != 'undefined' && FB != null ) {
            FB.Event.subscribe('auth.statusChange', function(response) {
                if (response.session || response.authResponse) {
                    setTimeout(goLogIn, 5000);
                } else {
                    window.location = "{{ path('fos_user_security_logout') }}";
                }
            });
        }
    }                      
    </script>  
    

    对于其余文件,请检查用户和Facebook捆绑包的文档。

    Facebook\u initialize
    参数中应该有
    'status':true

    {{facebook_initialize({'xfbml':true,'fbasyninit':'onFbInit();','status':true})}

    配置 security.yml

    services:
        my.facebook.user:
            class: Strict\UserBundle\Security\User\Provider\FacebookProvider
            arguments:
                facebook: "@fos_facebook.api"
                userManager: "@fos_user.user_manager"
                validator: "@validator"
                container: "@service_container"
        strict_user.my_provider:
            class: Strict\UserBundle\Security\User\Provider\StrictProvider
            public: false
            arguments: ["@fos_user.user_manager"]      
    security:
        factories:
              - "%kernel.root_dir%/../vendor/bundles/FOS/FacebookBundle/Resources/config/security_factories.xml"
    
        providers:
            chain_provider:
                providers: [fos_userbundle, my_fos_facebook_provider]
            fos_userbundle:
                id: strict_user.my_provider
            my_fos_facebook_provider:
                id: my.facebook.user
    
        encoders:
            "FOS\UserBundle\Model\UserInterface": sha512
    
        firewalls:
            public:
                pattern:   ^/
                fos_facebook:
                    app_url: "http://www.facebook.com/apps/application.php?id="
                    server_url: "http://localhost/web/app_dev.php"
                    login_path: fos_user_security_login
                    check_path: fos_facebook_security_check
                    default_target_path: homepage
                    provider: my_fos_facebook_provider
                form_login:
                    login_path: fos_user_security_login
                    check_path: fos_user_security_check
                    provider: fos_userbundle
                anonymous: true           
                logout:
                    path: fos_user_security_logout    
                    target: homepage
    
    services:
        my.facebook.user:
            class: Strict\UserBundle\Security\User\Provider\FacebookProvider
            arguments:
                facebook: "@fos_facebook.api"
                userManager: "@fos_user.user_manager"
                validator: "@validator"
                container: "@service_container"
        strict_user.my_provider:
            class: Strict\UserBundle\Security\User\Provider\StrictProvider
            public: false
            arguments: ["@fos_user.user_manager"]      
    security:
        factories:
              - "%kernel.root_dir%/../vendor/bundles/FOS/FacebookBundle/Resources/config/security_factories.xml"
    
        providers:
            chain_provider:
                providers: [fos_userbundle, my_fos_facebook_provider]
            fos_userbundle:
                id: strict_user.my_provider
            my_fos_facebook_provider:
                id: my.facebook.user
    
        encoders:
            "FOS\UserBundle\Model\UserInterface": sha512
    
        firewalls:
            public:
                pattern:   ^/
                fos_facebook:
                    app_url: "http://www.facebook.com/apps/application.php?id="
                    server_url: "http://localhost/web/app_dev.php"
                    login_path: fos_user_security_login
                    check_path: fos_facebook_security_check
                    default_target_path: homepage
                    provider: my_fos_facebook_provider
                form_login:
                    login_path: fos_user_security_login
                    check_path: fos_user_security_check
                    provider: fos_userbundle
                anonymous: true           
                logout:
                    path: fos_user_security_logout    
                    target: homepage
    

    对于其余文件,请查看用户和Facebook捆绑包的文档。

    >我已经实现了FOSUserBundle+FOSFacebookBundle,并且我可以>成功注册并登录为普通用户和Facebook用户。请看这里,您是否配置了此捆绑包您是否解决了问题?如果是的话,我会有兴趣去读的……是的,我读过。阅读我编辑的帖子:“解决了,应该有‘状态’:在facebook中为真。你应该让你的解决方案成为一个答案并接受它。@dan klasson谢谢,我已经添加了一个答案。