我一直在尝试使用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);
    }];

最佳答案

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

08-27 18:50