我正在使用 ZKForce 将 Sales Force 集成到我的应用程序中。直到现在我成功了,但现在我面临着关于刷新令牌的问题。
当我从我的应用程序登录到销售人员时,我正在执行以下操作。
- (void)loginResult:(ZKLoginResult *)result error:(NSError *)error
{
if (result && !error)
{
NSLog(@"session id is %@",result.sessionId);
[SFAccountManager sharedInstance].coordinator.credentials.accessToken = result.sessionId;
NSLog(@"Login Successful");
}
else if (error)
{
UIAlertView *myAlertView = [[UIAlertView alloc] initWithTitle:@"Connection failed" message:@"Failed connecting to server. Please try again" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil];
[myAlertView show];
}
}
这里我只是设置访问令牌而不是设置刷新令牌。
我下载了示例案例备忘录应用程序,成功登录后它具有以下内容。
- (void)loginOAuth:(FDCOAuthViewController *)oAuthViewController error:(NSError *)error
{
if ([oAuthViewController accessToken] && !error)
{
NSLog(@"Logged in to Salesforce");
[[FDCServerSwitchboard switchboard] setClientId:kSFOAuthConsumerKey];
[[FDCServerSwitchboard switchboard] setApiUrlFromOAuthInstanceUrl:[oAuthViewController instanceUrl]];
[[FDCServerSwitchboard switchboard] setSessionId:[oAuthViewController accessToken]];
[[FDCServerSwitchboard switchboard] setOAuthRefreshToken:[oAuthViewController refreshToken]];
NSLog(@"oauth token is %@",[oAuthViewController accessToken]);
NSLog(@"oauth token is %@",[oAuthViewController refreshToken]);
[self.splitViewController dismissModalViewControllerAnimated:YES];
[self.oAuthViewController autorelease];
// STEP 3 b - Save OAuth data after login
[self saveOAuthData: oAuthViewController];
[self didLogin];
}
else if (error)
{
[CaseMemoAppDelegate errorWithError:error];
}
}
他们在这里设置刷新令牌。
那么如何从我的代码中获取该刷新令牌。请帮我。谢谢