如何使用FB Access令牌和用户ID验证Tinder API

时间:2017-05-28 14:08:42

标签: ios facebook api afnetworking-3 tinder

我一直在尝试使用FB访问令牌和用户ID进行Tinder身份验证。我已经成功集成了FB SDK并获得了详细信息。我遵循了link中提供的API文档。

但是当我调用Tinder auth API时,我收到'未经授权的401'错误。不知道我在这里缺少什么,请在下面找到我使用的代码。

   AFHTTPSessionManager *manager = [[AFHTTPSessionManager alloc]initWithSessionConfiguration:[NSURLSessionConfiguration defaultSessionConfiguration]];
    manager.requestSerializer = [AFJSONRequestSerializer serializer];
    [manager.requestSerializer setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
    [manager.requestSerializer setValue:accessToken forHTTPHeaderField:@"X-Auth-Token"];
    [manager.requestSerializer setValue:@"Tinder/4.7.1 (iPhone; iOS 9.2; Scale/2.00)" forHTTPHeaderField:@"User-agent"];

    NSString *userId = [[NSUserDefaults standardUserDefaults] valueForKey:FB_LOGGED_IN_USERID_KEY];
    NSDictionary *parameterDic = @{@"facebook_token": accessToken, @"facebook_id": userId};

    [manager POST:TINDER_AUTH_URL parameters:parameterDic progress:nil success:^(NSURLSessionDataTask * _Nonnull task, id  _Nullable responseObject) {
        NSLog(@"success! %@", responseObject);    
    } failure:^(NSURLSessionDataTask * _Nullable task, NSError * _Nonnull error) {
        NSLog(@"error: %@", error);
    }];

2 个答案:

答案 0 :(得分:1)

您将X-Auth-Token标头设置为Facebook令牌accessToken,这可能会导致401错误。您只应在以下请求中将其设置为您将在auth请求的响应中获得的Tinder令牌。

答案 1 :(得分:0)

<强>更新

我在Github上创建了一个回购。你会知道它是如何工作的。更多信息:https://tinder.bhavukjain.com

/ *************** /

你使用的是错误的标签:

设置这样的参数:

let params:[String:Any] = ["locale":"en-IN",
                           "force_refresh": false,
                           "facebook_token":token,
                           "facebook_id":fbId]