私はES6 generatorsをJavascriptで使用しています。使用しているライブラリでスローされたエラーを処理する方法については、次のコードスニペットです:Javascriptジェネレータのキャッチエラー
const feedParser = require('co-feedparser');
try {
const meta = yield feedParser(url);
return meta.articles;
} catch(e) {
logger.error(e);
}
使用されているライブラリがfeedparserライブラリ周りの共同ラッパーであるco-feedparserです。 URLが渡されたときにライブラリがうまく動作し、有効なRSSフィードが得られます。しかし、いつでも無効RSSのURLのフィードは、渡された代わりに、例外をキャッチする、アプリがクラッシュし、私はfeedparserライブラリ内の例外であると考えてい
/node_modules/co-feedparser/node_modules/feedparser/main.js:332
this.stack[0][stdEl] = n;
^
TypeError: Cannot assign to read only property 'feed' of false`
をダンプします。アプリ全体をクラッシュさせる代わりに、これらの例外がキャッチされるようにするにはどうすればよいですか?
この方法で問題が発生するのは、不正なリクエストパラメータが原因でエラーがスローされた場合、アプリは応答を送信しないことです –