我想使用GTMOAuth作为OAuth1框架来登录各种服务(Google,Dropbox,Twitter等),然后将RestKit用于实际的REST通信。最好的方法是什么?

最佳答案

照常使用GTMOAuth来获取访问令牌。当您在那里时(并在使用RKClient之前),请初始化RKClient的OAuth1属性,如下所示(这将从Dropbox检索帐户信息):

- (void)doAnAuthenticatedAPIFetch {
    RKClient* client = [RKClient clientWithBaseURL:@"https://api.dropbox.com/1"];
    client.OAuth1AccessToken = mAuth.accessToken;
    client.OAuth1AccessTokenSecret = mAuth.tokenSecret;
    client.OAuth1ConsumerKey = mAuth.consumerKey;
    client.OAuth1ConsumerSecret = mAuth.privateKey;
    client.authenticationType = RKRequestAuthenticationTypeOAuth1;

    [client get:@"/account/info" delegate:self];
}


在将RKClient用于任何其他用途之前,初始化这些值很重要(这样它将成为单例sharedClient并已正确授权所有通信)。

关于ios - 如何在iOS上将GTMOAuth与RestKit集成在一起?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/9709607/

10-14 22:28