我想了解RestKit的對象抓取是如何工作的。據我瞭解,當我打電話,從RestKit中使用RKObjectManager從CoreData獲取
[[RKObjectManager sharedManager] getObjectsAtPath:@"/mypath/objects" parameters:nil success:^(RKObjectRequestOperation *operation, RKMappingResult *mappingResult) {
// Use objects that are returned.
} failure:^(RKObjectRequestOperation *operation, NSError *error) {
// Handle error
}];
Restkit將嘗試從web服務指定路徑來加載的對象,並調用成功塊一次的對象已經被檢索。它還會在調用成功塊之前使用我提供的映射來更新核心數據對象圖。如果我只想要核心數據中的對象怎麼辦?我如何訪問這些對象?我是否應該使用sharedManager的managedObjectStore的mainQueueManagedObjectContext直接對其執行NSFetchRequest,並且如果需要更新Core Data持久性存儲,則只需調用getObjectsAtPath:parameters:success:failure:
?
繁榮,正是我所期待的。這證實了我的懷疑。感謝你的回答。 –
有一個問題@如果我們這樣做,我想我們會阻塞主線程(即用戶界面)一段時間,不是嗎?除此之外,如果我們使用這些數據訪問數據,同時還有一個請求正在進行,那又如何呢?謝謝。 – Ricardo
@Ricardo RestKit將爲您創建後臺線程以運行網絡請求和映射操作 – Wain