SignalR解析值

时间:2016-08-05 07:53:45

标签: c# asp.net signalr

我正在尝试在asp.net中创建一个signalR hub但我在服务器上遇到了问题。它在我的本地机器上运行正常。我得到的错误:

  

解析值时遇到意外的字符:<。路径'',第0行,第0位。

代码是:

 var hubConnection = new HubConnection("http://server_name/appName/");
 hubConnection.Start().Wait();

我可以看到hubConnection网址是正确的,因为它与构造函数中提供的网址相同,这意味着:http://server_name/appName/signalr/

完整的堆栈跟踪是:

  

在Newtonsoft.Json.JsonTextReader.ParseValue()at   Newtonsoft.Json.JsonTextReader.ReadInternal()at   Newtonsoft.Json.JsonTextReader.Read()at   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.ReadForType(JsonReader   读者,JsonContract合同,布尔hasConverter)at   Newtonsoft.Json.Serialization.JsonSerializerInternalReader.Deserialize(JsonReader   reader,Type objectType,Boolean checkAdditionalContent)at   Newtonsoft.Json.JsonSerializer.DeserializeInternal(JsonReader阅读器,   输入objectType)at   Newtonsoft.Json.JsonSerializer.Deserialize(JsonReader reader,Type   objectType)at Newtonsoft.Json.JsonConvert.DeserializeObject(String   值,类型类型,JsonSerializerSettings设置)at   Newtonsoft.Json.JsonConvert.DeserializeObject [T](字符串值,   JsonSerializerSettings设置)at   Newtonsoft.Json.JsonConvert.DeserializeObject [T](String value)at   Microsoft.AspNet.SignalR.Client.Transports.TransportHelper.b__1(字符串   原始的   Microsoft.AspNet.SignalR.TaskAsyncHelper&LT;&GT; c__DisplayClass19 2.<Then>b__17(Task 1   t)at   Microsoft.AspNet.SignalR.TaskAsyncHelper.TaskRunners 2.<>c__DisplayClass42.<RunTask>b__41(Task 1   吨)

此外,在IIS上我没有表单身份验证,只启用了匿名身份验证。

PS:我已经阅读了与此相关的其他问题,但这些问题都不适用于此。 (我读过的问题是:thisthisthis

1 个答案:

答案 0 :(得分:0)

这基本上是Json.NET试图解析一个字符串并看到'&lt;'开头的字符意味着它不适合json。

通常有两种可能性:

  1. 您的网址返回HTML,第一个字符是文档的开头
  2. 您的网址返回XML
  3. 尝试捕捉字符串,看看它是什么。