我最近在我的一个应用程序中做到了这一点。简而言之,您应该知道的是,您的实体“属性”应被视为单独的列,其中表名可以与“实体名称”相同。之后,如果您需要同步数据,可以通过在 API 的 header 中设置数据来完成,该数据可以在服务器端检索。
例如:假设有一个名为 PlaylistData 的实体,其中包含属性 playlist_name 和歌曲。服务器端的列名也是如此。现在您想将这些保存在服务器上。首先,您将数据保存在 playlistNameArray 中,将歌曲保存在 songArray 中。在那之后 -
NSString *api = [NSString stringWithFormat:SAVE_PLAYLIST_API,id1];
NSMutableURLRequest *request = [NSMutableURLRequest requestWithURL:[NSURL URLWithString:api] cachePolicy:NSURLRequestReloadIgnoringLocalCacheData timeoutInterval:60];
[request setHTTPMethod:@"POST"];
NSMutableDictionary *requestDict = [NSMutableDictionary dictionary];
[requestDict setObject:self.playlistName forKey:@"playlist_name"];
[requestDict setObject:songIdArray forKey:@"songs"];
NSError *error = nil;
NSData *jsonData = [NSJSONSerialization dataWithJSONObject:requestDict
options:NSJSONWritingPrettyPrinted
error:&error];
NSString *jsonStr =[[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding];
[request setValue:@"application/json" forHTTPHeaderField:@"Accept"];
[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:jsonData];
id response = nil;
NSError *error1 = nil;
NSData *recievedData = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error1];
NSString *dataReceived =[[NSString alloc] initWithData:recievedData encoding:NSUTF8StringEncoding];
NSError *error2 = nil;
// 您可以看到“recievedData”来查看来自服务器的响应。