Указание прокси для http-proxy-middleware - PullRequest
0 голосов
/ 19 марта 2019

У меня есть проект nodeJS для внешнего интерфейса, который подключается к нескольким микро-сервисам. Когда мы делаем финальные развертывания, мы фактически внедряем встроенный JS и HTML в файл WAR вместе с бэкэндом.

Однако для разработки мы используем http-proxy-middleware, поэтому мы можем быстро вносить изменения и правки в интерфейс и видеть результаты.

Однако сегодня я хотел бы видеть соединения, выходящие из NODE-JS и идущие к нашим микросервисам.

В частности, я хочу туннелировать их через fiddler (который является http-прокси, обычно работающим на порту 8888).

Кто-нибудь знает, как это сделать?

Я попытался установить, например, следующее, но это не влияет на исходящее соединение:

прокси-сервер конфигурации npm http://localhost:8888

Ответы [ 2 ]

1 голос
/ 19 марта 2019

npm config set proxy http://localhost:8888 используется для настройки NPM для загрузки пакетов через прокси.

Вам нужно будет подключиться к прокси-серверу Fiddler вместо обычного бэкэнда с соответствующими заголовками HTTP для прокси.

Таким образом, запрос будет выглядеть примерно так:

http.get ({
    host: '127.0.0.1',
    port: 8888,
    path: 'http://actual.backend/url'
}, function (response) {
    console.log (response);
});
0 голосов
/ 19 марта 2019

Ну, ответ на мою проблему: use fiddler as a reverse proxy:

https://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/UseFiddlerAsReverseProxy

Я случайно наткнулся на это случайно. Я подумал, что, возможно, я не смогу перехватить все запросы, но я мог бы установить свою конечную точку как скрипач.

Я сделал это и увидел ответ в скрипаче от Fiddler Echo Service.

Это в основном отображает страницу, похожую на:

Fiddler Echo Service

PUT /abc-service/initialize HTTP/1.1
accept-language: en-AU,en;q=0.9,el;q=0.8,en-NZ;q=0.7,en-US;q=0.6,en-GB;q=0.5
accept-encoding: gzip, deflate, br
accept: */*
postman-token: 0466cca5-21f9-67ab-be05-5227ef667fe4
user-agent: Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/72.0.3626.121 Safari/537.36
origin: chrome-extension://fhbjgbiflinjbdggehcddcbncdddomop
cache-control: no-cache
content-length: 0
connection: close
host: localhost:8889   
X-Tenant-Id: abc  
X-Forwarded-Proto: http
X-Forwarded-Force-Http-Protocol: true
X-Forwarded-Prefix: abc-service

This page returned a HTTP/200 response 
Originating Process Information: node:15044

--------------------------------------------------------------------------------
•To configure Fiddler as a reverse proxy instead of seeing this page, see Reverse Proxy Setup ( https://docs.telerik.com/fiddler/Configure-Fiddler/Tasks/UseFiddlerAsReverseProxy )
•You can download the FiddlerRoot certificate
...