Iphone Ionic和sails.js(后端)测试
首先,我得为我的英语不好道歉 我尝试在iphone上测试ionic应用程序,但服务器端不接受来自iphone(ionic)的post数据。 我不明白怎么解决这个问题。我需要你的帮助 下面是错误消息Iphone Ionic和sails.js(后端)测试,iphone,angularjs,sails.js,ionic,Iphone,Angularjs,Sails.js,Ionic,首先,我得为我的英语不好道歉 我尝试在iphone上测试ionic应用程序,但服务器端不接受来自iphone(ionic)的post数据。 我不明白怎么解决这个问题。我需要你的帮助 下面是错误消息 [Error] Failed to load resource: Could not connect to the server. (login, line 0) http://localhost:1337/user/login [Error] Failed to load resource: the
[Error] Failed to load resource: Could not connect to the server. (login, line 0) http://localhost:1337/user/login
[Error] Failed to load resource: the server responded with a status of 404 (Not Found) (register-device-token, line 0) https://push.ionic.io/api/v1/register-device-token
这是爱奥尼亚服务代码.js
factory('AuthenticationService', ['$http', '$q', 'localStorageService', function($http, $q, localStorageService){
function loginUser(post){
var deferred = $q.defer();
$http.post('http://localhost:1337/user/login', post)
.success(function (data) {
if (data.error || !data.user) {
deferred.reject(data.error);
}
localStorageService.set('user', data.user);
user = data.user;
deferred.resolve(data.user);
})
.error(function () {
deferred.reject('error');
});
return deferred.promise;
}
return {
login: loginUser
};
}])
这里有controller.js
// inside of controller.js
AuthenticationService.login(user).then(function (result){
$ionicLoading.hide();
$state.go('app.profile');
}, function (error) {
$ionicLoading.hide();
console.log('error', error);
});
↓
航行路线
module.exports.routes = {
......
'POST /user/login': {
controller: 'LoginController',
action: 'create',
cors: true
},
......
}
create: function(req, res) {
'use strict';
sails.log.debug('create user method in');
var user = req.params,
uuid = NodeUuid.v4();
sails.log.debug('user = ' + JSON.stringify(user));
// Validator.validateUserInfo(user);
User.create({
//画面からの入力情報
}).exec(function (err, user) {
if (err) {
if (err.code == 11000) {
StatusService.returnResponse(res, Constants.statusCode.BadRequest, err, Constants.message.error.alreadyExistsEmail);
}
} else {
StatusService.returnResponse(res, Constants.statusCode.OK, null, '');
}
});
},
sails.js的LoginController.js
module.exports.routes = {
......
'POST /user/login': {
controller: 'LoginController',
action: 'create',
cors: true
},
......
}
create: function(req, res) {
'use strict';
sails.log.debug('create user method in');
var user = req.params,
uuid = NodeUuid.v4();
sails.log.debug('user = ' + JSON.stringify(user));
// Validator.validateUserInfo(user);
User.create({
//画面からの入力情報
}).exec(function (err, user) {
if (err) {
if (err.code == 11000) {
StatusService.returnResponse(res, Constants.statusCode.BadRequest, err, Constants.message.error.alreadyExistsEmail);
}
} else {
StatusService.returnResponse(res, Constants.statusCode.OK, null, '');
}
});
},
替换此:
http://localhost:1337/user/login
使用您电脑的本地IP地址(您可以通过在cmd中键入ipconfig来查找您的IP地址)
还要确保您的电脑和移动设备连接到同一个wifi。谢谢您的建议。现在可以了!我很感激你的忠告。再次感谢你。