可以从Facebook个人资料图片中检索图片文件的名称吗?
我想做的是:当用户登录时,我会检索用户的个人资料图片,然后将其保存在文件中。然而,我想始终检查用户是否在Facebook上更新了图片,如果是,请再次将其保存在文件中。
有可能得到文件的名称,因此我可以比较它们吗?
这是我用来下载图片的代码:
NSString *urlString = [NSString stringWithFormat:@"https://graph.facebook.com/%@/picture?width=100&height=100",[[PFUser currentUser] objectForKey:@"fbId"]];
NSURL *url = [NSURL URLWithString:urlString];
NSURLRequest *urlRequest = [NSURLRequest requestWithURL:url];
AFHTTPRequestOperation *requestOperation = [[AFHTTPRequestOperation alloc] initWithRequest:urlRequest];
requestOperation.responseSerializer = [AFImageResponseSerializer serializer];
[requestOperation setCompletionBlockWithSuccess:^(AFHTTPRequestOperation *operation, id responseObject){
profilePicture = [UIImage imageWithData: operation.responseData];
NSDictionary<FBGraphUser> *me = (NSDictionary<FBGraphUser> *)responseObject;
NSLog(@"ResponseObject %@", me.username);
NSLog(@"Profile Image %@",profilePicture);
[self saveImageOnDisk:profilePicture];
}];
您不需要执行任何操作。再次请求。URL加载子系统将检查其缓存的版本,并向Facebook发送一个If Modified Since(条件GET)请求,以检查更新的版本。你不必做任何特别的事情,系统会为你做这件事。如果有更新的数据可用,它将获得它,否则它将使用已经缓存的数据。
URL加载系统:了解缓存访问
RFC2616:HTTP缓存