在这种情况下,您可以采取以下两种方式:

1.如果你非常喜欢使用POST(我喜欢),你可以使用cocoahttpserver项目:

https://github.com/robbiehanson/CocoaHTTPServer

在iphone应用程序中,您可以执行此代码来发送POST请求:

-(NSDictionary *) getJSONAnswerForFunctionVersionTwo:(NSString *)function

withJSONRequest:(NSMutableDictionary *)request;

{

[self updateUIwithMessage:@"server download is started" withObjectID:nil withLatestMessage:NO error:NO];

NSDictionary *finalResultAlloc = [[NSMutableDictionary alloc] init];

@autoreleasepool {

NSError *error = nil;

NSString *jsonStringForReturn = [request JSONStringWithOptions:JKSerializeOptionNone serializeUnsupportedClassesUsingBlock:nil error:&error];

if (error) NSLog(@"CLIENT CONTROLLER: json decoding error:%@ in function:%@",[error localizedDescription],function);

NSData *bodyData = [jsonStringForReturn dataUsingEncoding:NSUTF8StringEncoding];

NSData *dataForBody = [[[NSData alloc] initWithData:bodyData] autorelease];

//NSLog(@"CLIENT CONTROLLER: string lenght is:%@ bytes",[NSNumber numberWithUnsignedInteger:[dataForBody length]]);

NSString *functionString = [NSString stringWithFormat:@"/%@",function];

NSURL *urlForRequest = [NSURL URLWithString:functionString relativeToURL:mainServer];

NSMutableURLRequest *requestToServer = [NSMutableURLRequest requestWithURL:urlForRequest];

[requestToServer setHTTPMethod:@"POST"];

[requestToServer setHTTPBody:dataForBody];

[requestToServer setTimeoutInterval:600];

[NSURLRequest setAllowsAnyHTTPSCertificate:YES forHost:[urlForRequest host]];

NSData *receivedResult = [NSURLConnection sendSynchronousRequest:requestToServer returningResponse:nil error:&error];

if (error) {

NSLog(@"CLIENT CONTROLLER: getJSON answer error download:%@",[error localizedDescription]);

[self updateUIwithMessage:[error localizedDescription] withObjectID:nil withLatestMessage:YES error:NO];

[finalResultAlloc release];

return nil;

}

NSString *answer = [[NSString alloc] initWithData:receivedResult encoding:NSUTF8StringEncoding];

JSONDecoder *jkitDecoder = [JSONDecoder decoder];

NSDictionary *finalResult = [jkitDecoder objectWithUTF8String:(const unsigned char *)[answer UTF8String] length:[answer length] error:&error];

[finalResultAlloc setValuesForKeysWithDictionary:finalResult];

[answer release];

[self updateUIwithMessage:@"server download is finished" withObjectID:nil withLatestMessage:NO error:NO];

if (error) NSLog(@"CLIENT CONTROLLER: getJSON answer failed to decode answer with error:%@",[error localizedDescription]);

}

NSDictionary *finalResultToReturn = [NSDictionary dictionaryWithDictionary:finalResultAlloc];

[finalResultAlloc release];

return finalResultToReturn;

}不要忘记将带有图像的属性打包到base64。

最后,如果你不喜欢保存你在mac app中发送的数据,你可以使用任何数据库C api发送到你的数据库。我建议使用核心数据来保存接收数据。

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐