У меня есть проект Vue.js, в котором я настроил dev-сервер веб-пакета для передачи всех запросов к пользовательскому интерфейсу на мой внутренний сервер.Вот соответствующая часть vue.config.js:
devServer: {
contentBase: PATHS.build,
port: 9000,
https: false,
hot: true,
progress: true,
inline: true,
watchContentBase: true,
proxy: {
'^/': {
target: 'http://127.0.0.1:8089',
secure: false
},
}
},
Я заметил, что если код ответа HTTP от http://127.0.0.1:8089 отличается от 2xx, то прокси завершается ошибкой со следующимошибка:
Ошибка прокси: не удалось прокси-запрос / API / тест с локального хоста: от 9000 до http://127.0.0.1:8089. См. https://nodejs.org/api/errors.html#errors_common_system_errors для получения дополнительной информации (HPE_INVALID_CHUNK_SIZE).
Это также приводит к тому, что код HTTP-ответа от запроса к localhost: 9000 будет равен 500 для любой ошибки, и вся информация о том, что пошло не так на стороне сервера, будет потеряна.Это проблематично, так как я хочу иметь возможность извлекать информацию из ответов об ошибках для отображения пользователю.
Я знаю, что это можно сделать, потому что он работал над более старым проектом Angular, который, я думаю, использовал Webpack 3(сейчас использую Webpack 4).Я попытался скопировать всю конфигурацию dev-сервера из этого проекта, но, похоже, он здесь не работает!
РЕДАКТИРОВАТЬ: я был не прав.Ошибка прокси-сервера возникает не при каждом неправильном ответе, а только для одного из запросов, который является загрузкой файла из нескольких частей.Все еще неспособен воспроизвести это в меньшем примере, чтобы поставить github, хотя так изо всех сил пытается определить причину.