MySQL データベースに保存されている BLOB イメージを iOS アプリケーションで使用したいと考えています。データベースから BLOB を取得するための PHP ファイルを作成しましたが、アプリに BLOB を取得するために何をする必要があるかわかりません。
例を教えてください。または、そうする方向を教えてください。
ありがとうございます!
MySQL データベースに保存されている BLOB イメージを iOS アプリケーションで使用したいと考えています。データベースから BLOB を取得するための PHP ファイルを作成しましたが、アプリに BLOB を取得するために何をする必要があるかわかりません。
例を教えてください。または、そうする方向を教えてください。
ありがとうございます!
ASIIHTTPRequestを使用して、その PHP ページから BLOB データを要求します。
BLOB データを使用して、UIImage に変換します。
- (void) getBlobData:(NSURL *) url {
NSURL *url = [NSURL URLWithString:url];
__block ASIHTTPRequest *request = [ASIHTTPRequest requestWithURL:url];
[request setCompletionBlock:^{
NSData *blobData = [request responseData];
UIImage *blobImage = [UIImage imageWithData:blobData] retain];
[someImageView performSelectorOnMainThread:@selector(setImage:)
withObject:blobImage
waitUntilDone:YES];
}];
[request setFailedBlock:^{
NSError *error = [request error];
}];
[request startAsynchronous];
}
または、Grand Central Dispatch (GCD) を使用して Web ページにリクエストを送信し、ブロブを受け取ることもできます。
- (void) getBlobData:(NSURL *) url {
dispatch_queue_t queue = dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0ul);
dispatch_async(queue, ^{
NSData *blobData = [NSData dataWithContentsOfURL:url];
UIImage *blobImage = [UIImage imageWithData:blobData];
dispatch_sync(dispatch_get_main_queue(), ^{
[someImageView setImage:blobImage];
});
});
}