我一直在尝试使用 Facebook 访问令牌和用户 ID 进行 Tinder 身份验证。我已经成功集成了Facebook 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 错误。您应该仅在以下请求中将其设置为您将在身份验证请求的响应中获得的 Tinder 令牌。
更新:
我在 Github 上创建了一个存储库。您将会了解它是如何工作的。更多信息:https://tinder.bhavukjain.com
/****************/
您使用了错误的标签:
设置参数如下:
let params:[String:Any] = ["locale":"en-IN",
"force_refresh": false,
"facebook_token":token,
"facebook_id":fbId]