@superivankorolev

Как отловить ошибку(error decode url) в express?

URIError: Failed to decode param 'CZito%t-S'
at decodeURIComponent (native)
at decode_param (/var/app/node_modules/express/lib/router/layer.js:167:12)

Cуть ошибки в том что, когда в пути юзер нарушает стандарт URL(символ процента неправильно впишет), то он получает такую ошибку. А это недопустимо, чтобы юзер видел какие файлы есть на сервере и тп.
  • Вопрос задан
  • 541 просмотр
Решения вопроса 1
@superivankorolev Автор вопроса
как-то так =) Решил сам.
app.use( (req, res, next) => {
    var err = null;
    try { decodeURIComponent(req.path); }
    catch(e) { err = e;}
    if (err){
        console.log(err, req.path);
        res.send('400 Bad Request');    
    }else next();
});
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы