在SignalR和.NetFreamwork的旧版本中,我使用该类继承类HubPipelineModule,如:
public class IsConnectedPipeLine : HubPipelineModule
{
protected override bool OnBeforeIncoming(IHubIncomingInvokerContext context)
{
if (context.MethodDescriptor.Name == "GetToken")
return true;
return ChatIdentity.CheckToken(context.Hub.Context.GetCurrentUserToken());
}
}
现在我想开始开发.NetCore 2.0和SignalR 1.0.0 alpha 2 但我不知道如何在Web API控制器中实现管道,中间件或类似于Costum ActionAttribute的东西,我不在乎如何,基本上我需要OnBeforeIncoming功能。
我搜索并发现只有this article,但它已经很老了,不适用于新版本。
答案 0 :(得分:0)
总结此处列出的内容以及此帖子链的走向。
Here is the proposal 最终被创建并用于网络核心信号器,以达到与 HubPipelineModule 类似的效果
and here is a link to documentation on it
如果你很好奇……Here's documentation on filters in general
如果你和我一样,你会发现这个部分对于编写你自己的过滤器特别有帮助
根据我自己的经验,我很害怕弄清楚如何使用它,因为我使用的是 net core 3.1 而不是 5.0。 5.0 提供了 AddFilter 调用。