我试图从我的 iphone 将 JSON 对象发送到 php 服务器
服务器将对其进行解码并执行一些功能,然后使用 JSON 重播回 iphone。
我已经设置了服务器,但我不确定我需要使用什么方法来连接到 php 服务器(使用 POST 方法)以及 iphone 将如何从服务器获取响应。
我试图从我的 iphone 将 JSON 对象发送到 php 服务器
服务器将对其进行解码并执行一些功能,然后使用 JSON 重播回 iphone。
我已经设置了服务器,但我不确定我需要使用什么方法来连接到 php 服务器(使用 POST 方法)以及 iphone 将如何从服务器获取响应。
这是您的代码享受
NSString *urlString = @"你的网址";
NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease];
[request setURL:[NSURL URLWithString:urlString]];
[request setHTTPMethod:@"POST"];
NSMutableData *body = [NSMutableData data];
NSString *boundary = [NSString stringWithString:@"---------------------------14737809831466499882746641449"];
NSString *contentType = [NSString stringWithFormat:@"multipart/form-data; boundary=%@", boundary];
[request addValue:contentType forHTTPHeaderField:@"Content-Type"];
[body appendData:[[NSString stringWithString:@"Content-Type: application/octet-stream\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[NSData dataWithData:imageData]];
[body appendData:[[NSString stringWithString:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
// Text parameter1
// NSString *param1 = @"parameter text";
[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"name\"\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithString:param1] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithString:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
// Another text parameter
// NSString *param2 = @"Parameter 2 text";
[body appendData:[[NSString stringWithFormat:@"--%@\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithFormat:@"Content-Disposition: form-data; name=\"desc\"\r\n\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithString:param2] dataUsingEncoding:NSUTF8StringEncoding]];
[body appendData:[[NSString stringWithString:@"\r\n"] dataUsingEncoding:NSUTF8StringEncoding]];
// close form
[body appendData:[[NSString stringWithFormat:@"--%@--\r\n", boundary] dataUsingEncoding:NSUTF8StringEncoding]];
// set request body
[request setHTTPBody:body];
像上面的代码一样,你可以使用 HTTP post 方法发送多个值。
看看这个 POSTing 数据: iPhone 用 NSURLConnection 发送 POST
如何在 Cocoa 中拥有 JSON 对象?您必须以某种方式将您拥有的任何数据转换为 JSON,将其发送到服务器,然后解析答案。