Я хотел бы знать, есть ли способ создать прокси, который будет действовать только по определенному маршруту в ASP.Net / IIS / MVC.
Конкретный вариант использования - то, что я хотел быскрыть экземпляр Elastic Search (сохранить его в частной сети) и разрешить внешнему интерфейсу вызывать мое приложение. Затем приложение должно иметь возможность обрабатывать данные, выполнять некоторую пользовательскую авторизацию и возвращать результат.
Так что если у нас есть маршрут / search в приложении ASP.Net, запрос будет отправлен туда, разрешив приложениючтобы перехватить вызов, измените запрос к ES, если необходимо, и верните ответ вызывающей стороне.
Так что, если у меня есть индекс, называемый "пользователи", например:
GET /search/users/_search?pretty
Я попаду на мой сервер, я могу добавить фильтры, если я хочу, и вернуть результат вызова, аналогичныйвот этот:
GET localhost:9200/users/_search?pretty
Мне было интересно, есть ли что-нибудь готовое, что могло бы сделать эту работу, или мой единственный вариант - ручное кодирование всей функциональности?
Я думал кое-что поСтроки создания виртуального каталога, создать обратный прокси-сервер в главном приложении, чтобы действовать только в этом виртуальном каталоге, а затем, возможно, перехватить Begin_Request ? Это стандартное приложение .Net (не .Net Core).