Tôi đang cố gắng truy vấn thông tin về người dùng sử dụng API tích hợp Facebook mới của iOS 6. Đây là mã tôi đang sử dụng, về cơ bản giống với những gì họ đã giới thiệu tại WWDC:Truy vấn dữ liệu người dùng Facebook thông qua khung công tác xã hội iOS6 mới
{
NSDictionary *parameters = @{};
NSURL *url = [NSURL URLWithString:@"https://graph.facebook.com/me"];
SLRequest *request = [SLRequest requestForServiceType:SLServiceTypeFacebook
requestMethod:SLRequestMethodGET
URL:url
parameters:parameters];
request.account = self.account;
[request performRequestWithHandler:^(NSData *responseData, NSHTTPURLResponse *urlResponse, NSError *error) {
NSLog(@"Facebook request received, status code %d", urlResponse.statusCode);
NSString *response = [[NSString alloc] initWithData:responseData encoding:NSUTF8StringEncoding];
NSLog(@"Response data: %@", response);
dispatch_async(dispatch_get_main_queue(), ^{
});
}];
}
Vấn đề là tôi nhận được mã lỗi 2500 từ Facebook: "Mã thông báo truy cập hoạt động phải được sử dụng để truy vấn thông tin về người dùng hiện tại. " Nếu tôi thay đổi truy vấn thành https://graph.facebook.com/[facebook id] thì nó hoạt động tốt. Tôi giả định rằng vấn đề là iOS đang chuyển mã thông báo truy cập của ứng dụng thay vì mã thông báo truy cập của người dùng khi gửi yêu cầu qua requestForServiceType. Tôi chỉ không biết cách sửa nó. Rõ ràng dự đoán và mã hóa cứng ID Facebook của người dùng của tôi không phải là một lựa chọn. Bất kỳ đề xuất?
Bạn có nhận được câu trả lời không? Khi iOS 6 được phát hành. –