Предположим следующий сценарий:
Клиент Rest - это модуль, который имеет множество промежуточных программ; которые сами являются модулями.
Теперь мы пытаемся создать новое промежуточное ПО, которое требует от самого клиента извлечения / обновления метаданных для входного URL-адреса клиента.
Тестирование этого промежуточного программного обеспечения приведет к публикации опубликованной версии клиента из реестра npm, поскольку промежуточное программное обеспечение имеет devDependency на клиенте. Но мы хотим обслужить нашего местного клиента.
Кроме того, опубликованная версия клиента не содержит этого нового промежуточного программного обеспечения, поэтому оно не позволит протестировать конвейер запросов с этим промежуточным программным обеспечением.
Мы хотим запустить клиент с помощью этого промежуточного программного обеспечения, когда мы тестируем само промежуточное программное обеспечение для отправки запроса на выборку данных.
Промежуточное программное обеспечение достаточно умен, чтобы не запрашивать метаданные для метаданных, поэтому оно пропустит второй вызов. Новый поток должен быть похож на диаграмму ниже: