Сгенерировать подпись без пакета - PullRequest
0 голосов
/ 23 октября 2018

Мне нужно интегрировать веб-приложение с API.API использует OAuth 1.0 для авторизации запросов.Я просмотрел документацию на http://oauth.net/core/1.0a/. Я выполнил все шаги для создания подписи, но сервер всегда возвращает сообщение «недопустимая подпись».

Однако, если я поставлю свой потребительский ключ,секрет пользователя, токен доступа и секрет токена доступа в POSTMAN.Затем подпись, сгенерированная POSTMAN, принимается сервером.

Это означает, что с сервером все в порядке.Проблема в коде, который я использую для генерации подписи.

Вот код, который я написал после прочтения документации для генерации токенов.

$consumer_key = '__MY_CONSUMER_KEY__';
$secret = '__MY__SECRET_KEY__';

$url = 'http://oauth.example.com/oauth/initiate';
$parameters = 'oauth_callback=oob&oauth_consumer_key='.$consumer_key.'&oauth_nonce='.dechex(time()).'&oauth_signature_method=HMAC-SHA1&oauth_timestamp='.time().'&oauth_version=1.0';


$signature = base64_encode(hash_hmac('sha1', 'GET&'.rawurlencode($url).'&'.rawurlencode($parameters), $secret, true));
$signed_request = $url.'?'.$parameters.'&oauth_signature='.$signature.PHP_EOL;

Я знаю тамнекоторые предопределенные пакеты доступны для этого, но я хочу знать, какова реальная логика для генерации подписи для OAuth 1.0.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...