Що перевіряє npm ping під час тестування проксі
Запускайте перевірку в контексті збійного процесу npm, а завантаження архіву та життєвого циклу тримайте окремо від результату.
npm ping --registry=https://registry.npmjs.org/Використовуйте реєстр, призначений для проєкту. npm ping звертається до цього реєстру й перевіряє автентифікацію через поточну конфігурацію. Важливе успішне завершення; вивід у вигляді порожнього об'єкта зі старого прикладу не є обов'язковим форматом.
Запускайте там, де виникає збій. Процес npm, запущений з IDE, може мати інші вхідні дані середовища або конфігурації, ніж термінал.
Читайте результат на правильній стадії
Якщо ping не вдається, збережіть першу помилку. Розв'язання проксі, з'єднання зі слухачем, запит 407 і відмова в автентифікації реєстру — різні стадії.
Якщо ping успішний, але встановлення не вдалося, збережіть URL подальшого завантаження разом з його помилкою. Архів може бути на іншому хості, і скрипт життєвого циклу може завантажити окремий виконуваний файл. Наприклад, Cypress документує власну поведінку проксі та завантаження бінарних файлів; ping реєстру не виконує цієї передачі.
Коли питання в тому, чи трафік узагалі проходив через проксі, зіставте відповідь реєстру із записами проксі або іншим спостереженням за маршрутом. Відповідь сама по собі підтверджує доступність і автентифікацію, а не точний шлях.