我想在 API 请求导致 404 错误时采取特定操作。我读过,执行此操作的适当方法是处理应用程序适配器中的错误,如下所示:
handleResponse: function(status, headers, payload){
if(status === 404 && payload.errors){
//handle error
}
return this._super(...arguments);
}
问题是,一旦我设置了适配器,它就不会完成加载页面,所以我可以处理页面本身的错误。相反,它会自动将我带到一些只显示“适配器错误”的错误路径。我怎样才能停止/覆盖这种行为?
最佳答案
原来我需要调整应用程序适配器中的 handleResponse Hook ,以将新的 requestData 参数传递给 super 方法。
handleResponse (status, headers, payload, requestData) {
return this._super(status, headers, payload, requestData);
},
然后我只是将问题中的第一行代码从
handleResponse: function(status, headers, payload) {
到
handleResponse: function(status, headers, payload, requestData) {
然后我能够捕获并处理错误
关于javascript - Ember -- JSON API 适配器错误处理,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35831122/