单点登录:卡在jsconnect中的进度图像上

时间:2012-12-28 12:03:35

标签: php wordpress

我想要实现的是,用户登录我的wordpress网站并登录vanilla论坛,我在vanilla论坛中安装了jsconnect插件,并使用以下位置jsConnectPHP的php的jsconnect库

这是我的代码:

require_once('functions.jsconnect.php');

$clientID = "1501569466";
$secret = "xxxxxxxxxxxxxxxxxxxxxx";

$userD = array();

if( isset($_POST['log']) ){
    $data = array();
    $data['user_login'] = $_POST['u_user'];
    $data['user_password'] = $_POST['u_pass'];
    $data['remember'] = TRUE;

    $user = wp_signon($data, FALSE);

    if(!is_wp_error($user)){
        $userD['uniqueid'] = $user->ID;
        $userD['name'] = $user->user_login;
        $userD['email'] = $user->user_email;
        $userD['photourl'] = '';

        $secure = true;
        WriteJsConnect($user, $_GET, $clientID, $secret, $secure);
        $redirect = "http://localhost/vanilla/entry/jsconnect?client_id={$clientID}";

        echo "<script>document.location.href='".$redirect."';</script>";
    }
}

当用户登录wordpress时,我将其重定向到vanilla中的jsconnect url,我只发现了一张进度图像,并且无法弄清楚问题出在哪里..

1 个答案:

答案 0 :(得分:1)

jsconnect身份验证网址需要jsonp数组,如下所示:

test({"email":"test@test.com",
      "name":"testuser",
      "photourl":"",
      "uniqueid":1234,
      "client_id":"12345678",
      "signature":"XXXX"})  

您在jsconnect中指定的授权URL应该看到此输出进一步处理。事实上,我被困在那一点上。我可以看到vanilla论坛在加载时获得此输入但没有登录。