Javascript Symfony2 Facebook connect-使用js sdk登录后重定向

Javascript Symfony2 Facebook connect-使用js sdk登录后重定向,javascript,facebook,sdk,symfony-2.1,Javascript,Facebook,Sdk,Symfony 2.1,我正在我的Symfony2.1公司的网站上使用javascript sdk实现Facebook connect 我使用的以下代码工作正常: <script> window.fbAsyncInit = function() { FB.init({ appId : 'my-app-id', // App ID cookie : true, xfbml : true,

我正在我的Symfony2.1公司的网站上使用javascript sdk实现Facebook connect

我使用的以下代码工作正常:

<script>
    window.fbAsyncInit = function() {
        FB.init({
            appId  : 'my-app-id', // App ID
            cookie : true,
            xfbml  : true,
            oauth  : true
        });
    };

    function after_click() {
        FB.getLoginStatus(function(response) {
            if (response.status === 'connected') {
                window.location = "{{ hwi_oauth_login_url('facebook') }}";
            }
        });
    }

    // Load the SDK Asynchronously
    (function(d){
        var js, id = 'facebook-jssdk', ref = d.getElementsByTagName('script')[0];
        if (d.getElementById(id)) { window.fbAsyncInit(); return;}
        js = d.createElement('script'); js.id = id; js.async = true;
        js.onload = window.fbAsyncInit;
        js.src = '//connect.facebook.net/fr_FR/all.js';
        ref.parentNode.insertBefore(js, ref);
    }(document));
</script>

<div class="fb-login-button m_y" scope="email,user_birthday" onlogin="after_click()"></div>

window.fbAsyninit=函数(){
FB.init({
appId:'我的应用程序id',//应用程序id
曲奇:是的,
xfbml:是的,
真的吗
});
};
单击()后的函数{
FB.getLoginStatus(函数(响应){
如果(response.status===“已连接”){
window.location=“{hwi_oauth_login_url('facebook')}”;
}
});
}
//异步加载SDK
(职能(d){
var js,id='facebook jssdk',ref=d.getElementsByTagName('script')[0];
if(d.getElementById(id)){window.fbAsyninit();return;}
js=d.createElement('script');js.id=id;js.async=true;
js.onload=window.fbAsyninit;
js.src='//connect.facebook.net/fr_fr/all.js';
ref.parentNode.insertBefore(js,ref);
}(文件);
我面临的问题是,我正在拼命寻找一种方法,在用户登录后将其重定向到当前页面。现在的行为是,用户总是被重定向到我的网站主页

我知道在使用PHPSDK时有一个重定向uri参数,我正在寻找与JSSDK类似的东西,我不得不说我很难找到它

window.location=“{{hwi_oauth_login_url('facebook')}”
来自Symfony2 OAuth捆绑包,用于管理Facebook连接。也许我需要告诉OAuth捆绑包在成功登录后重定向到哪里,但也找不到解决方案


谢谢你的任何想法。

好的,其实很简单,只需在我的安全设置中添加
use\u referer:true
。yml完成了以下工作:

security:
    ...
    firewalls:
        portal_area:
            ...
            oauth:
                resource_owners:
                    facebook:      "/login/check-facebook"
                login_path:        /connect
                failure_path:      /connect
                always_use_default_target_path: false
                default_target_path: /
                target_path_parameter: _target_path
                use_referer: true

已解决。

为什么不直接使用
location.reload()
?我需要使用
window.location=“{{hwi\u oauth\u login\u url('facebook')}”
要实际验证FB身份验证过程并将用户连接到我的网站,您可以将当前URL附加到该地址(客户端),然后在处理登录后重定向回该地址。