2012-06-08 36 views
0
实施GTMOAuth

我需要实现GTMOAuth我的iOS app..for这个我已经下载了OAuth的图书馆和写一些代码我怎样才能在iOS的

- (GTMOAuthAuthentication *)myCustomAuth { 


NSString *myConsumerKey = @"f964039f2d7bc82054"; // pre-registered with service 
NSString *myConsumerSecret = @"c9a749c0f1e30c9246a3be7b2586434f"; // pre-assigned by service 

GTMOAuthAuthentication *auth; 
auth = [[[GTMOAuthAuthentication alloc] initWithSignatureMethod:kGTMOAuthSignatureMethodHMAC_SHA1 
                consumerKey:myConsumerKey 
                privateKey:myConsumerSecret] autorelease]; 

// setting the service name lets us inspect the auth object later to know 
// what service it is for 
auth.serviceProvider = @"Custom Auth Service"; 

return auth; 
} 



- (void)signInToCustomService { 

NSURL *requestURL = [NSURL URLWithString:@"http://alpha.easyreceipts.com/api/v1/oauth/request_token"]; 
NSURL *accessURL = [NSURL URLWithString:@"http://alpha.easyreceipts.com/api/v1/oauth/access_token"]; 
NSURL *authorizeURL = [NSURL URLWithString:@"http://alpha.easyreceipts.com/api/v1/oauth/authorize"]; 
NSString *scope = @"http://alpha.easyreceipts.com/api/v1/"; 

GTMOAuthAuthentication *auth = [self myCustomAuth]; 

// set the callback URL to which the site should redirect, and for which 
// the OAuth controller should look to determine when sign-in has 
// finished or been canceled 
// 
// This URL does not need to be for an actual web page 
[auth setCallback:@"http://alpha.easyreceipts.com/api/v1/"]; 

// Display the autentication view 
GTMOAuthViewControllerTouch *viewController; 
viewController = [[[GTMOAuthViewControllerTouch alloc] initWithScope:scope 
                  language:nil 
                requestTokenURL:requestURL 
                authorizeTokenURL:authorizeURL 
                 accessTokenURL:accessURL 
                 authentication:auth 
                 appServiceName:@"My App: Custom Service" 
                  delegate:self 
                  finishedSelector:@selector(viewController:finishedWithAuth:error:)] autorelease]; 
viewController = [self.storyboard instantiateViewControllerWithIdentifier:@"myID"]; 

[[self navigationController] pushViewController:viewController 
             animated:YES]; 
} 

但进一步的,我不知道如何实现请帮助我提前致谢

回答

0

首先,如果您想要使用GTM库实现OAuth身份验证系统,您应该得到这一个。 你可以找到GTMOAuth here的完整源代码。

其次,你可以找到一个如何在git仓库中使用它的例子。你应该找到你至少需要认证的一切。 如果您还有其他问题,请提供更多信息。