2012-07-16 5 views
0

twitter API에 대한 확인 된 요청을하기 위해 토큰/토큰 비법을 얻을 수있었습니다. Nethertheless 내가 QOAuth트위터 API에 대한 인증 된 GET 요청

나는이 코드를 사용 "http://api.twitter.com/1/followers/ids.json"

에 액세스하려고를 사용하여 C++ 이러한 요청을 할 관리하지 않는

_oauthInterface = new QOAuth::Interface(this); 
_manager = new QNetworkAccessManager(this); 

_oauthInterface->setConsumerKey(CONSUMER_KEY); 
_oauthInterface->setConsumerSecret(CONSUMER_SECRET_KEY); 

QOAuth::ParamMap params; 
    params.insert("user_id", QString::number(id).toAscii()); 
    params.insert("cursor", cursor.toAscii()); 

QString url("http://api.twitter.com/1/friends/ids.json"); 

QByteArray header = _oauthInterface->createParametersString(url, 
                  QOAuth::GET, 
                  token.toUtf8(), 
                  tokenSecret.toUtf8(), 
                  QOAuth::HMAC_SHA1, 
                  params, 
                  QOAuth::ParseForHeaderArguments); 

QNetworkRequest request; 
if(!params.isEmpty()) 
    url.append(_oauthInterface->inlineParameters(params, QOAuth::ParseForInlineQuery)); 

request.setUrl(url); 
request.setRawHeader("Authorization", header); 

_manager->get(request); 

QObject::connect(_manager, SIGNAL(finished(QNetworkReply*)), this, SLOT(replyHandler(QNetworkReply*))); 

(150) 요청 후 나는 대답으로

"{"error":"Rate limit exceeded. Clients may not make more than 150 requests per hour.","request":"\/1\/followers\/ids.json?cursor=-1&user_id=xxxxxxxxx"}" 

를 얻을. 나는 어떻게 확인되지 않았는가?

답변

0

얼마나 어리석은가요? 이 코드는 훌륭합니다. 방금 토큰/토큰 시크릿 대신 잘못된 인수 (토큰/토큰)를 사용하여이 함수를 호출했습니다.

액세스 토큰이 잘못되었을 경우 트위터가 알려주지 않습니다.