SignalR错误:调用提供了1个参数,但目标期望0

时间:2018-11-05 12:47:09

标签: javascript c# .net-core signalr

我正在将signalR内核与angular6一起使用,并且正在接收消息,但是在控制台中我总是收到此错误。

这是什么意思?

System.IO.InvalidDataException: Invocation provides 1 argument(s) but target expects 0.
   at Microsoft.AspNetCore.SignalR.Protocol.MessagePackHubProtocol.BindArguments(Byte[] input, Int32& offset, IReadOnlyList`1 parameterTypes, IFormatterResolver resolver)
   at Microsoft.AspNetCore.SignalR.Protocol.MessagePackHubProtocol.CreateInvocationMessage(Byte[] input, Int32& offset, IInvocationBinder binder, IFormatterResolver resolver)
fail: Microsoft.AspNetCore.SignalR.Client.HubConnection[57]
      Failed to bind arguments received in invocation '(null)' of 'Send'.
System.IO.InvalidDataException: Invocation provides 1 argument(s) but target expects 0.
   at Microsoft.AspNetCore.SignalR.Protocol.MessagePackHubProtocol.BindArguments(Byte[] input, Int32& offset, IReadOnlyList`1 parameterTypes, IFormatterResolver resolver)
   at Microsoft.AspNetCore.SignalR.Protocol.MessagePackHubProtocol.CreateInvocationMessage(Byte[] input, Int32& offset, IInvocationBinder binder, IFormatterResolver resolver)
warn: Microsoft.AspNetCore.SignalR.Client.HubConnection[14]

1 个答案:

答案 0 :(得分:1)

我偶然发现了同样的错误;尽管我的C#代码中的Hub具有正确数量的参数。

原来,我的JavaScript脚本代码所连接的Hub是错误的代码。

即,如果您的JavaScript客户端连接到服务器Hub

,则可能发生此错误
  1. 具有方法,但参数数量不匹配或
  2. 没有javascript调用的方法(提示:检查拼写错误!)