使用 Backbone 和节点将模型保存到服务器
Saving model to the server using Backbone and Node
我是 Backbone / AJAX 的新手(刚接触节点,我的服务器是 运行 的)我正在尝试 "save" 我的使用 Backbone 中的 Save 方法将模型发送给用户。我正在尝试为我的大学项目实施网络聊天。目前我想发送用户输入的用户名和密码。
我的服务器端代码:
//Module user
exports.login = function(req, res) {
console.log("login request");
console.log(req.body);
res.sendStatus(200);
};
//Main Server Script
app.post("/user/login", user.login);
我的客户端代码。
login: function(self) {
self.model.urlRoot = "/user/login";
self.model.save({}, {
success: function(model, response) {
console.log('SUCCESS:');
console.log(response);
},
error: function(model, response) {
console.log('FAIL:');
console.log(response);
}
});
}
该函数由持有登录按钮的视图调用,并获取视图作为参数。该视图具有对其模型的引用。
在服务器上,我按预期获得了输入的数据,但客户端的响应却给我错误:
FAIL:
Object {
readyState: 4,
getResponseHeader: .ajax/v.getResponseHeader(),
getAllResponseHeaders: .ajax/v.getAllResponseHeaders(),
setRequestHeader: .ajax/v.setRequestHeader(),
overrideMimeType: .ajax/v.overrideMimeType(),
statusCode: .ajax/v.statusCode(),
abort: .ajax/v.abort(),
state: .Deferred/d.state(),
always: .Deferred/d.always(),
then: .Deferred/d.then(),
// 11 weitere…
}
我试着自己弄明白了,但我不明白。
您的服务器未发回任何内容(或 OK 字符串),响应无法解释为有效 JSON 并且 jQuery 认为查询失败。
在您的用户模块中,尝试
exports.login = function(req, res) {
console.log("login request");
console.log(req.body);
// send back an empty object
res.json({});
};
我是 Backbone / AJAX 的新手(刚接触节点,我的服务器是 运行 的)我正在尝试 "save" 我的使用 Backbone 中的 Save 方法将模型发送给用户。我正在尝试为我的大学项目实施网络聊天。目前我想发送用户输入的用户名和密码。
我的服务器端代码:
//Module user
exports.login = function(req, res) {
console.log("login request");
console.log(req.body);
res.sendStatus(200);
};
//Main Server Script
app.post("/user/login", user.login);
我的客户端代码。
login: function(self) {
self.model.urlRoot = "/user/login";
self.model.save({}, {
success: function(model, response) {
console.log('SUCCESS:');
console.log(response);
},
error: function(model, response) {
console.log('FAIL:');
console.log(response);
}
});
}
该函数由持有登录按钮的视图调用,并获取视图作为参数。该视图具有对其模型的引用。
在服务器上,我按预期获得了输入的数据,但客户端的响应却给我错误:
FAIL:
Object {
readyState: 4,
getResponseHeader: .ajax/v.getResponseHeader(),
getAllResponseHeaders: .ajax/v.getAllResponseHeaders(),
setRequestHeader: .ajax/v.setRequestHeader(),
overrideMimeType: .ajax/v.overrideMimeType(),
statusCode: .ajax/v.statusCode(),
abort: .ajax/v.abort(),
state: .Deferred/d.state(),
always: .Deferred/d.always(),
then: .Deferred/d.then(),
// 11 weitere…
}
我试着自己弄明白了,但我不明白。
您的服务器未发回任何内容(或 OK 字符串),响应无法解释为有效 JSON 并且 jQuery 认为查询失败。
在您的用户模块中,尝试
exports.login = function(req, res) {
console.log("login request");
console.log(req.body);
// send back an empty object
res.json({});
};