[JavaScript] URI malformed / malformed URI sequence エラーの雑な対応方法
JavaScript で URI malformed / malformed URI sequence エラーの雑な対応方法をご紹介します。
メッセージ
URIError: malformed URI sequence (Firefox) URIError: URI malformed (Chrome)
エラータイプ
URIError
何がうまくいかなかったのか?
URI エンコードかデコードが成功しませんでした。decodeURI か encodeURI、encodeURIComponent、decodeURIComponent 関数の引数が無効のため、関数は適切にエンコード、またはデコードできませんでした。
try…catch 文で雑に処理します。
// encode 済みの URL パラメータを decode する
decodeURIParams(encodedURIParams) {
try {
return decodeURIComponent(encodedURIParams);
} catch (err) {
return '';
}
}
以上、URI malformed にたまに遭遇してしまう現場からお送りしました。