Backbone - 处理来自服务器的空响应

时间:2013-11-16 22:30:38

标签: backbone.js

我使用fetch从服务器检索我的模型。当我在我的数据库中有数据但是如何处理服务器发送给客户端的空响应时,它工作得很好?

例如,如果用户尚未保存任何数据,则服务器发送带有空数组的http 200响应,并且主干触发错误回调,但我只想通知用户数据库中没有保存数据。在这种情况下,空响应只意味着没有要加载的模型,我不想创建带响应的任何模型。

这是我使用的代码:

app.plans.fetch({
    success: function(data) {
        app.Notifications.updateMessages({text: "Plans loaded."});
    },
    error: function (){
        app.Notifications.updateMessages({text: "Error."});
    }
});

服务器如何表明它没有问题但是没有数据?

2 个答案:

答案 0 :(得分:1)

如果您负责后端并且您可以更改响应行为,则应使用http状态204进行空内容响应,而不是200

这应该有帮助

答案 1 :(得分:0)

如果服务器以200响应,则不应触发错误回调。有点奇怪。 您能否添加服务器响应示例?

成功和错误回调也将以下选项作为参数:(集合,响应,选项)