cancel
Showing results for 
Search instead for 
Did you mean: 

Oauth 1 request token signature is invalid

Oauth 1 request token signature is invalid

Am not able to get request token in magento app. Signature is always invalid.

This is the code i use to generate the signature. The consumer key is the one is i get from localhost:8000 (magento shop) request to localhost:3000.

I tried changing the url both to localhost 8000 and 3000.

Followed these instructions: Magento instructions

 

function getSignature($consumerKey)
{
    $params = array(
        'oauth_nonce' => uniqid(mt_rand(1, 1000)),
        'oauth_signature_method' => 'HMAC-SHA1',
        'oauth_timestamp' => time(),
        'oauth_version' => '1.0',
        'oauth_consumer_key' => $consumerKey,
    );

    ksort($params);
    $baseString = strtoupper('POST') . '&';
    $baseString .= rawurlencode('http://localhost:8000') . '&';
    $baseString .= rawurlencode(buildSignatureDataString($params));

    $signature = hash_hmac('SHA1', $baseString, getSigningKey(), true);

    return base64_encode($signature);
}

function getSigningKey()
{
    return rawurlencode('magento_private_key') . '&';
}

function buildSignatureDataString(array $signatureData)
{
    $signatureString = '';
    $delimiter = '';
    foreach ($signatureData as $key => $value) {
        $signatureString .= $delimiter . $key . '=' . $value;

        $delimiter = '&';
    }

    return $signatureString;
}