func addSongToQueue(){
let post = [
"data": [
"QueueId": MyViewState.selectedQueId,
"track":[
[
"title":selectedTrack.title,
"stream_url": selectedTrack.stream_url,
"userName" : selectedTrack.userName,
"artWorkURL": selectedTrack.artWorkURL,
"userAvatar": selectedTrack.userAvatar,
"trackID" : selectedTrack.trackID,
"duration" : selectedTrack.duration
]]]
]
曲目获取代码:崩溃的应用程序添加到字典
-(instancetype) initWithDictionary: (NSDictionary*) SCTrackDict {
self = [self init];
if (self) {
self.title = SCTrackDict[@"title"];
self.stream_url = SCTrackDict[@"stream_url"];
self.userDict = SCTrackDict[@"user"];
self.userName = self.userDict[@"username"];
self.artWorkURL = SCTrackDict[@"artwork_url"];
self.trackID = SCTrackDict[@"id"];
self.userAvatar = self.userDict[@"avatar_url"];
self.duration = SCTrackDict[@"duration"];
}
return self;
}
数据解析到曲目:
+(NSMutableArray *) parseJSONData: (NSData *) JSONData {
NSError* error;
NSMutableArray* SCTrackArray = [NSMutableArray new];
NSArray *JSONArray= [NSJSONSerialization JSONObjectWithData:JSONData options:0 error: &error];
if ([JSONArray isKindOfClass:[NSArray class]]) {
for (NSDictionary* trackDict in JSONArray) {
SCTrack* trackObject = [[SCTrack alloc]initWithDictionary:trackDict];
//Need to print out trackDict to see JSON dictionary
[SCTrackArray addObject:trackObject];
}
}
return SCTrackArray;
}
如何添加 “”(空字符串),如果NSNull在那里,并且由于它是长期的价值,所以也在trackid
上崩溃。
在添加字典之前,是否可以在不检查单个密钥的情况下修改此代码?
使用TrackID可选。 – amorbytes
你可以请添加代码如何使用可选? –
告诉我你如何访问'trackID'的代码我会为它写代码。 – amorbytes