gpt4 book ai didi

signalr - 与 SignalR 同步调用客户端方法

转载 作者:行者123 更新时间:2023-12-04 19:11:52 28 4
gpt4 key购买 nike

Web 服务器如何使用 SignalR 同步调用客户端上的方法?这里的关键部分是服务器应该等待客户端将数据发送回服务器才能继续?

基本上,我希望将客户端方法调用视为 WCF 服务请求。调用客户端并等待数据返回。

最佳答案

SignalR 不提供同步调用客户端方法的方法。

要实现与同步调用相同的功能,您可以将某种调用 ID 作为参数传递给客户端方法。当客户端方法完成时,客户端然后可以调用服务器端方法,如 ClientMethodCompleted 及其调用 ID。基本上,您将实现自己的 ACK。

如果你走这条路线,你将不得不在服务器上跟踪客户端调用及其各自的 ID。然后,您可以在服务器上的 ClientMethodCompleted 方法中执行同步调用后执行的任何逻辑。

如果您只在一个客户端上调用该方法,这应该相当简单。如果您在多个客户端上调用该方法,则必须跟踪您在哪些客户端上调用您的方法,以便确保所有客户端在运行后续代码之前都已确认该调用。

如果您完全担心 DOS 攻击,我还会确保您定期清理存储未确认客户端调用的数据结构,因为这将是一个明显的攻击向量,可能允许恶意客户端消耗内存。

关于signalr - 与 SignalR 同步调用客户端方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14199923/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com