Я разрабатываю приложение для iPhone, и план состоит в том, чтобы время от времени отправлять пакет JSON из приложения на локальный веб-сервер. Для этого я планировал использовать Alamofire. Мой метод POST выглядит так:
Alamofire.request(Alamofire.Method.POST, "http://XXX.XX.X.XX:3000/update", parameters: dictPoints, encoding: .JSON)
.responseJSON {(request, response, JSON, error) in
println(JSON)
}
IP-адрес выделен, но я убедился, что он соответствует беспроводному IPv4-адресу моего локального сервера. Сервер настроен на прослушивание порта 3000. Конфигурация сервера выглядит так:
var express = require('express');
var app = express();
var mongoose = require('mongoose');
mongoose.connect('mongodb://localhost/test');
var db = mongoose.connection;
db.on('error', console.error.bind(console, 'connection error:'));
db.once('open', function (callback) {
console.log("MongoDB connection is open.");
});
// Mongoose Schema definition
var Schema = mongoose.Schema;
var LocationSchema = new Schema({
//some schema here
});
// Mongoose Model definition
var LocationsCollection = mongoose.model('locations', LocationSchema);
// URL management
app.get('/', function (req, res) {
res.sendFile(__dirname + '/index.html');
});
app.get('/update', function (req, res) {
console.log("Got something from the phone!");
});
// Start the server
var server = app.listen(3000, function () {
var host = server.address().address
var port = server.address().port
console.log('App listening at %s:%s',host, port)
})
Итак, этот сервер, кажется, работает нормально. Я могу проверить это в своем браузере и ввести URL-адрес: http://127.0.0.1:3000, и он будет подавать мне файл index.html. Если я ввожу http://127.0.0.1:3000/update..., то получаю " Что-то с телефона!" сообщение. Однако, когда я запускаю свое приложение (убедившись, что мой телефон находится в той же беспроводной сети, что и сервер) и вызывается метод Alamofire... ответ, который я получаю, равен нулю. Я также не вижу сообщения "Получил что-то с телефона!" сообщение. Может ли кто-нибудь сообщить мне, почему это происходит ... или еще лучше, как это исправить?