这是我第一次玩api和oauth而tumblr有php client。我已经使用composer下载并安装了客户端。这是他们设置客户端所需的代码。
$client = new Tumblr\API\Client($consumerKey, $consumerSecret);
$client->setToken($token, $tokenSecret);
我知道消费者密钥和秘密但我如何使用tumblrs php客户端获取令牌和令牌秘密?
我也知道oauth的过程,但我不知道如何实际实现它:/
答案 0 :(得分:4)
只是我们在同一页面,您可以通过浏览器登录流程舞蹈获取用户的令牌和秘密。 Tumblr的流程与Twitter的流程基本相同,因此您可以将其用作参考:Implementing Sign in with Twitter。您可以查看Tumblr Authentication documentation中的 OAuth 部分,以获得正确的终结点。
请注意,您链接到的Tumblr's PHP client将默认基本网址设置为"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中的commit以获取有关如何实现这一目标的更多信息。