Quickblox REST API Laravel上的意外签名

时间:2015-07-30 20:41:08

标签: php android ios rest quickblox

我从QuickBlox REST API获得以下json响应:

{
    "base": ["Unexpected signature"]
}

我的签名方法:

private function createSignature($login, $password, $timestamp, $nonce)
{
    $signatureContent = "application_id=" . env('QB_APP_ID') .
        "&auth_key=" . env('QB_APP_KEY') .
        "&nonce=" . $nonce .
        "&timestamp=" . $timestamp .
        "&user[login]=" . $login .
        "&user[password]=" . $password;

    return hash_hmac('sha1', $signatureContent, env('QB_APP_SECRET'));
}

应用程序ID和身份验证密钥是正确的。 $signatureContent值(断行仅用于提高文本可读性):

application_id=24544
&auth_key=6N9bYKT-fKGRQ7q
&nonce=268302610
&timestamp=1438287989
&user[login]=tester1@test.net
&user[password]=qwer1234

当我尝试使用此参数创建会话时,我收到此响应:

$postBody = http_build_query([
    'application_id' => env('QB_APP_ID'),
    'auth_key' => env('QB_APP_KEY'),
    'timestamp' => $ts, // SAME VALUE ON SIGNATURE: 1438287989
    'nonce' => $nonce, // SAME VALUE ON SIGNATURE: 268302610
    'signature' => $signature,
    'user[login]' => $login,
    'user[password]' => $password
]);

// cURL Request and Response....

我的签名有什么问题?

1 个答案:

答案 0 :(得分:1)

我正在创建一个新的用户注册表,因此不需要用户[登录]和用户[密码]参数。只需登录就可以使用这些参数。