/
aprogrammer
/
reverse-proxy-ms-yarp
Обзор
Документация
Войти
/
aprogrammer
/
reverse-proxy-ms-yarp
Код
Запросы
0
Задачи
Вики
Пакеты
0
Релизы
0
Аналитика
Безопасность
main
src/ReverseProxy/WebSocketsTelemetry/WebSocketsTelemetryExtensions.cs
29 строк
1 KB
Chris Ross
Using new TimeProvider #2084 (#2108)
27 апр 2023, 01:51
Не верифицирован
27 апр 2023, 01:51
be58d84
Код
Авторство
О чём код?
// Copyright (c) Microsoft Corporation. // Licensed under the MIT License. using System; using Microsoft.Extensions.DependencyInjection; using Yarp.ReverseProxy.WebSocketsTelemetry; namespace Microsoft.AspNetCore.Builder; /// <summary> /// <see cref="IApplicationBuilder"/> extension methods to add the <see cref="WebSocketsTelemetryMiddleware"/>. /// </summary> public static class WebSocketsTelemetryExtensions { /// <summary> /// Adds a <see cref="WebSocketsTelemetryMiddleware"/> to the request pipeline. /// Must be added before <see cref="WebSockets.WebSocketMiddleware"/>. /// </summary> public static IApplicationBuilder UseWebSocketsTelemetry(this IApplicationBuilder app) { return app.Use(next => { // UseWebSocketsTelemetry may be used independently of the rest of YARP. // Avoid exposing another extension method (AddWebSocketsTelemetry) just because of TimeProvider. var timeProvider = app.ApplicationServices.GetService<TimeProvider>() ?? TimeProvider.System; return new WebSocketsTelemetryMiddleware(next, timeProvider).InvokeAsync; }); } }