我拿了this code用于制作 sinatra 网络服务器并使用 express 制作我自己的 Node.js 版本。然后我得到了this code在 iPhone 上工作以从服务器获取数据。 iphone 应用程序发送对“/sushi.json”的 HTTP 请求,服务器使用 app.get('/sushi.json', function(request, response))
处理此请求。然后,服务器将一个 JSON 字符串发送回 iOS 应用程序,然后将其解析为一个数组,以便它可以使用它。
但是如果我想发送数据到服务器怎么办?在 iPhone 应用程序中,我将如何构建和发送 JSON 字符串,服务器将如何监视它?
另外,我不需要使用 socket.io 来让它工作。这是应该在这里使用的东西吗?
最佳答案
不,socket.io 是如果你想在你的服务器和客户端之间保持一个持久的流。其主要用途是当您需要服务器能够将数据推送到客户端而不是客户端请求它时。
要发布一些 JSON,您将使用与以前相同的代码,但创建请求对象的方式略有不同:
__autoreleasing NSError* error = nil;
id result = [NSJSONSerialization JSONObjectWithData:data
options:kNilOptions error:&error];
NSDictionary *params = [NSDictionary dictionaryWithObjectsAndKeys:
result, @"my_json", nil];
NSMutableURLRequest *request = [httpClient requestWithMethod:@"POST"
path:@"/myobject" parameters:params];
您将通过以下方式在服务器上获取您的数据
JSON.parse(request.params['my_json'])
关于objective-c - 将数据从 iPhone 应用程序发送到 Node.js Web 服务器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9985835/