次のサービスがあります。
app.factory('myService', function($resource) {
return $resource("resources/myServiceUri", {param1: "foo"}, {
get: {method: "GET", isArray: true}
});
});
ページの読み込み時に、アプリケーションは次のようにサービスを呼び出します。
myService.get({},function(result) {
model.myServicesModel = result;
console.log("if there are network problems the control goes here");
});
これは、バックグラウンドが実行されていて、接続が正常な場合に完全に機能します。しかし、何らかの理由で、または別のバックグラウンド サービスがデータベースに接続できない場合、リソース呼び出しを使用すると、エラー コード 500 の応答が返されます。これでも問題ありませんが、このサービス呼び出しは、それぞれが 1 文字を含む大量のリソース オブジェクトを返すようです。バックグラウンド サービスによってスローされた例外から。
ご覧のとおり、エラー コールバックをまったく使用していませんが、使用したとしても、この問題が発生すると、制御は成功コールバックに移行します。
これを処理する良い方法はありますか?エラー コード 500 で返される応答を回避することはできますか?
この同じ呼び出しに対して http ヘッダーのみを返す「事前リソース呼び出し」を行うことで問題を解決できる場合がありますが、より良い解決策はありますか?