16352是.NET Web服务可以返回Jsonp的最大长度



我有一个Web服务,它将Json值返回给javascript调用程序。由于我无法让.NET返回JSON格式,(尽管我已经将其设置为ResponseFormat:=ResponseForm.JSON)(而且,这不是一个跨域请求)我不得不设置javascript以在JSONP中接收它。

在返回值的字符长度开始增长之前,此操作一直很好。奇怪的错误开始出现。我花了几个小时,最后,我能找到的唯一模式是:

在一个"神奇"的16352个字符之后,它将在返回值之间插入一个");jsonp134926090225("。在javascript方面,它只是接收响应并尝试将其作为正常解析,从而导致输出的随机区域出现错误。

以前有人遇到过这个问题吗?16352个字符并不多,我根本无法减少长度来回避这个问题。

提前谢谢。

以下是firebug返回值的片段:

lign=\u0027absMiddle\u0027/\u003e\u003cimgsrc=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027align=\u0027absMiddle\u0027/\u003e\u003cimgsrc=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027align=);jsonp13492609000225(u0027absMiddle \u0027/\u003e\u003cimgsrc=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027align=\u0027absMiddle\u0027/\u003e\u003cimgsrc=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027align=\u0027absMiddle\u0027/\u003e\u003cimgsrc=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027 align=\

这是返回值的Web服务:

<WebMethod()> _
<ScriptMethod(UseHttpGet:=True, ResponseFormat:=ResponseFormat.Json)> _
Public Function L_C_H(ByVal CSI As String, ByVal CCI As String) As List(Of SquareLet.ChatManagement.Chat)
Return SquareLet.ChatManagement.Chat.LoadHistory(Guid.Parse(CSI), Guid.Parse(CCI))
End Function

必须将MaxJsonLength设置为更大的值。这个属性可能会限制你。

相关内容

  • 没有找到相关文章

最新更新