Javascript 主干网模型中的中止访问成功回调
我有一个主干模型,它由以下解析方法组成Javascript 主干网模型中的中止访问成功回调,javascript,backbone.js,Javascript,Backbone.js,我有一个主干模型,它由以下解析方法组成 parse: function(response, options){ // Handling Error for http response 200 if( response.Reasons && response.Reasons[0] ){ var errorResponse = { responseJSON: { reasons: [
parse: function(response, options){
// Handling Error for http response 200
if( response.Reasons && response.Reasons[0] ){
var errorResponse = {
responseJSON: {
reasons: [
{
code: response.Reasons[0].ReasonCode,
reason: ''
}
]
}
}
options.error( errorResponse );
return errorResponse;
}
}
我的问题是,我的web服务不会为错误提供http响应500。我需要从回复中检查并决定。但问题是,上面的代码运行错误回调,但之后它也会转到成功回调。我必须停止
我从服务器收到一个json响应,如下所示
{Data: {some data}}
错误
{Data: {}, Reasons: [{error code}]}
请告诉我怎么做。“提前感谢”默认情况下,主干网希望响应为
JSON
,因此如果从服务器返回JSON
,则会触发成功回调。如果不重写主干的fetch方法,则无法停止触发成功。错误情况下的响应(正文)是什么?发布一个成功的例子:{Data:{some Data}}错误:{Data:{},原因:[{error code}]}在问题中发布,请注意,我有一个基本模型类&所有其他模型都扩展了这个基本模型。这就是为什么我要更改基本模型的解析方法,这样就不必更改fetch、save或其他方法。我现在有什么选择?你不能停止解析:(,但在出现错误时发送纯文本非常简单,因为默认情况下不是json。会触发错误,但不成功不允许更改服务器响应。我试图从一个常见的位置管理此操作。如果没有,我必须以艰难的方式来完成。覆盖同步似乎是唯一的解决方案,谢谢,看来同步是正确的选择解决我的问题