В ядре Signalr .net — где должна проходить проверка?

Если у меня есть метод концентратора, который принимает параметры

e.g.

public IObservable<MyStreamItem> StreamData(SomeRequestData request)
{}

Как распространять ошибки проверки в запросе?

Фактический HTTP-запрос выполняется только при установленном сокетном соединении. Таким образом, последующие вызовы методов концентратора не проходят через промежуточное ПО. Это просто фреймы/сообщения в открытом веб-сокете.

Я просмотрел этот пакет для предыдущей версии Signalr (для полной платформы .net) https://github.com/AGiorgetti/SignalR.Validation

Здесь используется HubPipelineModule, который, похоже, не существует в новом сигнале ядра .net.

Есть ли подходящее место в конвейере, к которому я могу подключиться для проверки? Или это нужно делать в самом методе хаба? И если да, то как бы вы условно возвращали структурированный набор ошибок, в отличие от того, каким должен быть фактический тип возвращаемого значения?

спасибо


person ChrisCa    schedule 24.01.2018    source источник


Ответы (1)


В настоящее время в альфа-версии SignalR нет HubPipelineModules, но мы ищем эквивалент для предварительной версии 2. Сегодня вам нужно будет сделать это в методе и потенциально выдать ошибку, чтобы вернуть его клиенту.

person davidfowl    schedule 25.01.2018
comment
спасибо @davidfowl - когда вы ожидаете, что превью 2 выйдет? - person ChrisCa; 25.01.2018
comment
привет @davidfowl, это попало в RC? Если да, то как называется функция. Я не вижу ничего похожего в исходном коде - person ChrisCa; 25.05.2018
comment
В ASP.NET Core SignalR нет модулей концентратора конвейера. - person davidfowl; 29.05.2018