/// <summary> /// Initializes ProxyMiddleware. A middleware that sends request to target service, reads reponse from this service and sends it back to pipeline. This middleware should be the /// last one in pipeline /// </summary> /// <param name="next"></param> /// <param name="logger">logger used to log warnings, errors and debug messages</param> /// <param name="options">proxy opitions</param> /// <param name="httpClientMessageHandler">if defined this message handler will be used to initialize HttpClient. This parameter is used in unit tests.</param> public ProxyMiddleware(AppFunc next, ILog logger, ProxyOptions options, HttpMessageHandler httpClientMessageHandler) { this.next = next; this.options = options; this.logger = logger; this.httpClientMessageHandler = httpClientMessageHandler; }
public static void UseProxy(this IAppBuilder app, ILog logger, ProxyOptions options = null, HttpMessageHandler httpClientMessageHandler = null) { options = options ?? new ProxyOptions(); if (httpClientMessageHandler == null) { app.Use <ProxyMiddleware>(logger, options); } else { app.Use <ProxyMiddleware>(logger, options, httpClientMessageHandler); } }
/// <summary> /// Initializes ProxyMiddleware. A middleware that sends request to target service, reads reponse from this service and sends it back to pipeline. This middleware should be the /// last one in pipeline /// </summary> /// <param name="next"></param> /// <param name="logger">logger used to log warnings, errors and debug messages</param> /// <param name="options">proxy opitions</param> public ProxyMiddleware(AppFunc next, ILog logger, ProxyOptions options) : this(next, logger, options, null) { }