Đăng nhập qua Twitter và cố gắng lấy tên màn hình Người dùng. Tên màn hình tạo ra một giá trị null mỗi lần. Bất kỳ ý tưởng?Tên màn hình Twitter trả về giá trị rỗng trong Parse
PFUser *currentUser = [PFUser currentUser];
[PFTwitterUtils logInWithBlock:^(PFUser *user, NSError *error) {
if (!user) {
NSLog(@"Uh oh. The user cancelled the Twitter login.");
return;
} else if (user.isNew) {
twitterScreenName = [PFTwitterUtils twitter].screenName;
NSLog(@"%@",[PFTwitterUtils twitter].screenName);
NSString * requestString = [NSString stringWithFormat:@"https://api.twitter.com/1.1/users/show.json?screen_name=%@", twitterScreenName ];
NSURL *verify = [NSURL URLWithString:requestString];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:verify];
[[PFTwitterUtils twitter] signRequest:request];
[NSURLConnection sendAsynchronousRequest:request queue:[NSOperationQueue mainQueue] completionHandler:^(NSURLResponse *response, NSData *data, NSError *connectionError) {
NSError *error;
NSDictionary* result = [NSJSONSerialization JSONObjectWithData:data options:NSJSONReadingAllowFragments error:&error];
if (!error) {
user.username =twitterScreenName;
user[@"name"]= result[@"name"];
user[@"profileDescription"] = result[@"description"];
user[@"imageURL"] = [result[@"profile_image_url_https"] stringByReplacingOccurrencesOfString:@"_normal" withString:@"_bigger"];
[user saveEventually];
}
}];
[self performSegueWithIdentifier: @"username" sender: self];
}
tôi sẽ trả lời dưới đây, nhưng nếu bạn đang sử dụng logInWithBlock, bạn không nên sử dụng dòng đầu tiên PFUser * CurrentUser = [PFUser CurrentUser] vì không ai được đăng nhập chưa vì vậy không có người sử dụng hiện tại ! – AlexKoren
@ spogebob92 bạn có thể giải quyết nó không? Tôi có cùng một vấn đề và không thể hiểu được. – Cyprian