2012-07-10 55 views
0

我的代码的新的大本营阿比看起来是这样的:问题与OAuth认证使用OAConsumer

OAConsumer *consumer = [[OAConsumer alloc] initWithKey:@"my_ClientID" 
               secret:@"my_Secret"]; 

NSURL *url = [NSURL URLWithString:@"https://launchpad.37signals.com/authorization/token"]; 

OAMutableURLRequest *request = [[OAMutableURLRequest alloc] initWithURL:url 
                   consumer:consumer 
                    token:nil // we don't have a Token yet 
                    realm:nil // our service provider doesn't specify a realm 
                 signatureProvider:nil]; // use the default method, HMAC-SHA1 

[request setHTTPMethod:@"POST"]; 

NSLog(@"USER URL : %@",[request URL]); 
OADataFetcher *fetcher = [[OADataFetcher alloc] init]; 

[fetcher fetchDataWithRequest:request 
        delegate:self 
      didFinishSelector:@selector(requestTokenTicket:didFinishWithData:) 
       didFailSelector:@selector(requestTokenTicket:didFailWithError:)]; 

- (void)requestTokenTicket:(OAServiceTicket *)ticket didFinishWithData:(NSData *)data { 
    if (ticket.didSucceed) { 
     NSString *responseBody = [[NSString alloc] initWithData:data 
                 encoding:NSUTF8StringEncoding]; 
     OAToken *requestToken = [[OAToken alloc] initWithHTTPResponseBody:responseBody]; 
     NSLog(@"%@",requestToken); 
    } 
} 

我的委托方法从未获得(ticket.didSucceed)成功。

有人能告诉我我在这里失踪了吗?

感谢

回答

0

它看起来像你试图让用户授权您的应用程序,并产生首次令牌。为此,您使用了错误的网址。从37Signals API

  1. 您的应用程序请求授权的用户重定向到启动板: https://launchpad.37signals.com/authorization/new?type=web_server&client_id=your-client-id&redirect_uri=your-redirect-uri

您正在使用的URL是用于从验证码获取访问令牌。

+0

有帮助。谢谢 – 2012-07-12 10:05:38

+0

@Mark S.和shyambhat你可以给我一些时间,我需要你对Basecamp Next Api的帮助。电子邮件是:[email protected]谢谢 – 2014-11-12 18:13:16