我正在尝试使用 QOAuth 对 twitter 的 API 进行身份验证。
我目前的代码是:
oauthInterface->setConsumerKey(CONSUMER_KEY);
oauthInterface->setConsumerSecret(CONSUMER_SECRET_KEY);
oauthInterface->setRequestTimeout(10000);
QOAuth::ParamMap reply = oauthInterface->requestToken("https://api.twitter.com/oauth/request_token", QOAuth::GET, QOAuth::HMAC_SHA1);
if(oauthInterface->error() == QOAuth::NoError)
{
token = reply.value(QOAuth::tokenParameterName());
tokenSecret = reply.value(QOAuth::tokenSecretParameterName());
qDebug() << "temporary token" << token << tokenSecret;
}
reply = oauthInterface->accessToken("https://api.twitter.com/oauth/access_token",QOAuth::GET, token, tokenSecret, QOAuth::HMAC_SHA1);
if(oauthInterface->error() == QOAuth::NoError)
{
qDebug() << "final token" << reply.value("screen_name") << reply.value(QOAuth::tokenParameterName()) << reply.value(QOAuth::tokenSecretParameterName());
}
else
{
qDebug() << "ERROR" << oauthInterface->error();
}`
并给我
temporary token "cBhxmmdkYgmghyy02kmfc0VSIuykRCNoQRh2h1r3Yg" "oYF8b2lzPSgDTRku8X4BjjnoVw5dAXXZBXc2R9P8Jk"
ERROR 401
使用 QOAuth::POST 而不是 QOAuth::GET 我有相同的结果
如何使用 QOAuth 获取访问令牌?