Отправка данных из приложения iPhone на веб-сервер Node.js. - PullRequest
1 голос
/ 03 апреля 2012

Я взял этот код для создания веб-сервера sinatra и создал свою собственную версию Node.js с использованием Express. Затем я получил этот код для работы на iPhone для получения данных с сервера. Приложение iphone отправляет HTTP-запрос для '/sushi.json', и сервер обрабатывает это с помощью app.get('/sushi.json', function(request, response)). Затем сервер отправляет строку JSON обратно в приложение iOS, которое затем анализирует ее в массив, чтобы он мог ее использовать.

Но что, если я хочу отправить данные на сервер? В приложении для iPhone, как мне построить и отправить строку JSON, и как сервер будет следить за ней?

Кроме того, мне не нужно было использовать socket.io, чтобы заставить это работать. Это то, что следует использовать здесь?

1 Ответ

2 голосов
/ 03 апреля 2012

Нет, 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'])
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...