Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/442.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
Javascript 与FB.Event.subscribe一起发布_Javascript_Symfony_Fosuserbundle - Fatal编程技术网

Javascript 与FB.Event.subscribe一起发布

Javascript 与FB.Event.subscribe一起发布,javascript,symfony,fosuserbundle,Javascript,Symfony,Fosuserbundle,我把这个脚本放在html的头部部分: <script> function goLogIn(){ alert("go login"); window.location.href = "{{ path('_security_check') }}"; } function onFbInit() { if (typeof(FB) != 'undefined' && FB != null ) {

我把这个脚本放在html的头部部分:

<script>
    function goLogIn(){
        alert("go login");
        window.location.href = "{{ path('_security_check') }}";
    }

    function onFbInit() {
        if (typeof(FB) != 'undefined' && FB != null ) {
            alert('here')
            FB.Event.subscribe('auth.statusChange', function(response) {
                if (response.session || response.authResponse) {
                    alert("login");
                    setTimeout(goLogIn, 500);
                } else {
                    alert('logout');
                    window.location.href = "{{ path('_security_logout') }}";
                }
            });
        }
    }
  </script>

函数goLogIn(){
警报(“登录”);
window.location.href=“{path”(“安全检查”)}”;
}
函数onFbInit(){
if(typeof(FB)!=“未定义”&&FB!=null){
警报(‘此处’)
FB.Event.subscribe('auth.statusChange',函数(响应){
if(response.session | | response.authResponse){
警报(“登录”);
setTimeout(戈洛金,500);
}否则{
警报(“注销”);
window.location.href=“{path(''u security\u logout')}”;
}
});
}
}
所以这里的警告框被打印出来了。然而,我尝试登录和注销,但没有任何登录或注销被触发。知道为什么吗

下面是我初始化facebook按钮的方式:

<!-- inside a twig template -->
{{ facebook_initialize({'xfbml': true, 'fbAsyncInit': 'onFbInit();'}) }}

{{ facebook_login_button({'autologoutlink': true, 'label': 'Log in using Facebook'}) }}

{{facebook_initialize({'xfbml':true,'fbasyninit':'onFbInit();'})}
{{facebook_登录_按钮({'autologutlink':true,'label':'login using facebook'}}}}

结果是我必须清除Cookie,然后它才能工作。

“{path('u security\u logout')}”
被细枝插入的吗?@ethagnawl介意澄清插入的意思吗?问题是它甚至没有打印警报,无论是登录还是注销Twig是否将
{{path(''u security\u logout')}}
转换为字符串?控制台中是否有任何错误?您是否尝试在
'auth.statusChange'
回调中放置
警报,但在
if
回调之外?@ethagnawl是,并且它也没有打印警报
FB
内部
onFbInit
的值是多少?您是否在页面中包含了facebook.js脚本?