我从v1 foursquare api升级到需要Oauth2的v2。
按照推荐的方式使用Web服务器流是否正确我应该引导用户: https://foursquare.com/oauth2/authenticate ?CLIENT_ID = YOUR_CLIENT_ID &安培; RESPONSE_TYPE =代码 &安培; REDIRECT_URI = YOUR_REGISTERED_REDIRECT_URI
用户通过身份验证后,foursquare会重定向到: https://YOUR_REGISTERED_REDIRECT_URI/?code=CODE
含义我需要在https://YOUR_REGISTERED_REDIRECT_URI定义一个端点,然后向
发出请求https://foursquare.com/oauth2/access_token ?CLIENT_ID = YOUR_CLIENT_ID &安培; client_secret = YOUR_CLIENT_SECRET &安培; grant_type = authorization_code &安培; REDIRECT_URI = YOUR_REGISTERED_REDIRECT_URI &安培;代码= CODE
在我的服务器端获取实际令牌。
此流程如何将令牌返回移动设备以供使用?
感谢您的帮助。
答案 0 :(得分:1)
这只是我的一个猜测,但这是一个可能的流程:
答案 1 :(得分:0)
如果您正在执行无服务器流程(仅限移动应用程序),您将执行以下操作:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
。if ([url.absoluteString rangeOfString:@"access_token="].location != NSNotFound) NSString *accessToken = [[url.absoluteString componentsSeparatedByString:@"="] lastObject];
保存该accessToken,并确保将其包含在所有Foursquare调用中(参数:oauth_token = ACCESSTOKEN)