POST NSDictionary或NSArray到JSON?

如何将NSArray或NSDictionary值发布到JSON.Its是否可能。现在我已经完成NSDictionary值和NSArray值转换成JSON.But我连接PHP我的PHP代码有编码和解码方法与编码和解码如何可以得到我从JSON的反应? 怎样才能得到这个回应的价值?

我试图转换JSON格式的代码::

// Empty array NSArray *emptyArray = @[]; // Single element array NSArray *singleElementArray = @[@"Error Message"]; // Array of strings NSArray *arrayOfStrings = @[@"First Name", @"Last Name"]; // Array of above arrays NSArray *arrayOfObjects = @[emptyArray, singleElementArray, arrayOfStrings]; // Dictionary with several kay/value pairs and the above array of arrays NSDictionary *dict = @{@"BlogName" : @"iOS Developer Tips", @"BlogDomain" : @"iOSDeveloperTips.com", @"Array" : arrayOfObjects}; NSError *error = nil; NSData *json; // Dictionary convertable to JSON ? if ([NSJSONSerialization isValidJSONObject:dict]) { // Serialize the dictionary json = [NSJSONSerialization dataWithJSONObject:dict options:NSJSONWritingPrettyPrinted error:&error]; NSLog(@"json: %@", json); // If no errors, let's view the JSON if (json != nil && error == nil) { NSString *jsonString = [[NSString alloc] initWithData:json encoding:NSUTF8StringEncoding]; NSLog(@"JSON conversion: %@", jsonString); } } 

我从jsonString得到了正确的值。我已经把这个string发布到JSON POST方法,它的工作正常,但我需要NSDictionary或NSArray发布到JSON.HOW?

最后我得到的解决scheme::

// iOS 5 Json序列化

 NSMutableDictionary *dict = [[NSMutableDictionary alloc] initWithObjectsAndKeys:@"value1",@"username",@"value2",@"password", nil]; NSLog(@"dict :: %@",dict);// What ever parametere you want send value and key pair in this dictionary. NSError *error2; NSData *jsonData = [NSJSONSerialization dataWithJSONObject:dict options:kNilOptions error:&error2]; NSString *post = [[NSString alloc] initWithData:jsonData encoding:NSUTF8StringEncoding]; NSData *postData = [post dataUsingEncoding:NSASCIIStringEncoding allowLossyConversion:YES]; NSString *postLength = [NSString stringWithFormat:@"%d", [postData length]]; NSLog(@"postLength :: %@",postLength); NSMutableURLRequest *request = [[NSMutableURLRequest alloc] init]; [request setURL:[NSURL URLWithString:@"http://localhost:8000/api/v1/login/"]];// URL post URl change here. [request setHTTPMethod:@"POST"]; [request setValue:postLength forHTTPHeaderField:@"Content-Length"]; [request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"]; [request setValue:@"application/json" forHTTPHeaderField:@"Accept"]; [request setHTTPBody:postData]; NSURLResponse *response; NSError *error3; NSData *POSTReply = [NSURLConnection sendSynchronousRequest:request returningResponse:&response error:&error3]; NSString *str = [[NSString alloc] initWithData:POSTReply encoding:NSUTF8StringEncoding]; NSLog(@"str :: %@",str); NSDictionary *json = [NSJSONSerialization JSONObjectWithData:POSTReply options:NSJSONReadingMutableContainers error:&error3]; NSLog(@"parsedvalue%@",json);