Objective-C & JSONKit POST проблема - PullRequest
       7

Objective-C & JSONKit POST проблема

0 голосов
/ 26 сентября 2011

Я пытаюсь опубликовать в бэкэнде рельсов Objective-C и JSONKit, и у меня возникают трудности с публикацией результатов.Я продолжаю возвращать нулевой набор записей с моего сервера.

[dictionary setValue:(@"bar")  forKey:@"foo"];

NSString *JSON = [dictionary JSONString];
NSData *theData = [JSON dataUsingEncoding:NSUTF8StringEncoding];
NSURL *url = [NSURL URLWithString: myUrl];

NSString *postLength = [NSString stringWithFormat:@"%d", [theData length]];

NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
NSError *error = NULL;
NSURLResponse *response = nil;

[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
[request setValue:@"application/json-rpc" forHTTPHeaderField:@"Content-Type"];
[request setHTTPBody:theData];
NSData *result = [NSURLConnection sendSynchronousRequest:request
                                       returningResponse:&response error:&error];

NSString *resultString = [[NSString alloc] initWithData:result encoding:NSUTF8StringEncoding];
NSLog(resultString);

Чего-то мне не хватает?JSON, кажется, корректно сериализуется

{"foo": "bar"}

Любая помощь будет принята с благодарностью.
Спасибо!

1 Ответ

1 голос
/ 27 сентября 2011

Просто изменил setValue с json-rpc на json, и это сработало как чемпион.

[request setURL:url];
[request setHTTPMethod:@"POST"];
[request setValue:postLength forHTTPHeaderField:@"Content-Length"];
**[request setValue:@"application/json" forHTTPHeaderField:@"Content-Type"];**
[request setCachePolicy:NSURLRequestReloadIgnoringCacheData];
[request setHTTPBody:theData];
...