Это мой первый раз, играя с api, а oauth и tumblr имеет php-клиент . Я загрузил и установил клиент с композитором. Это код, который они должны настроить для клиента.
$client = new Tumblr\API\Client($consumerKey, $consumerSecret); $client->setToken($token, $tokenSecret);
Я знаю ключ потребителя и секрет, но как я могу получить токен и токен с помощью tumblrs php client?
Я также знаю процесс oauth, но я не знаю, как его реализовать: /
Именно поэтому мы находимся на одной странице, вы можете получить токен пользователя и секрет, пройдя танк потока входа в браузер. Поток Tumblr в значительной степени совпадает с потоком Twitter, поэтому вы можете использовать его как ссылку: Реализация Войти с помощью Twitter . Вы можете посмотреть часть OAuth в документации Authentication Tumblr, чтобы получить правильные конечные точки.
Обратите внимание, что клиент PHP Tumblr, к которому вы привязались, имеет базовый url по умолчанию, установленный на "http://api.tumblr.com/"
тогда как конечные точки OAuth (например, request_token
) используют "http://www.tumblr.com"
. Чтобы иметь возможность использовать конечные точки OAuth, вам просто нужно будет изменить базовый url. Вот пример первого шага в процессе входа, получившего токен запроса:
// Requesting for http://www.tumblr.com/oauth/request_token $client = new Tumblr\API\Client($consumerKey, $consumerSecret); // Change the base url $client->getRequestHandler()->setBaseUrl('http://www.tumblr.com/'); $req = $client->getRequestHandler()->request('POST', 'oauth/request_token', [ 'oauth_callback' => '...', ]); // Get the result $result = $req->body->__toString();
Вы должны получить это в $result
:
oauth_token=ulE1EuaZvJSN0qIKfQO5EFgcrxrOLJF0Cnm7VbLQqj66oF9nwt&oauth_token_secret=PLjC7s4JeIlgm53q7FKL1wqQkFoL0775JC6UkHKiepAQ6TxXxp&oauth_callback_confirmed=true
См. Эту фиксацию в Github для получения дополнительной информации о том, как это стало возможным.