0

Json 値を JavaScript 呼び出し元に返す Web サービスがあります。.NET に JSON 形式を返させることができなかったので (ResponseFormat:=ResponseFormat.Json として設定したにもかかわらず) (また、これはクロス ドメイン要求ではありません)、それを受け取るように JavaScript を設定する必要があります。代わりに JSONP。

戻り値の文字長が長くなり始めるまで、これは正常に機能しています。奇妙なエラーがポップアップし始めます。数時間かかりましたが、最後に、私が見つけることができる唯一のパターンは次のとおりです。

「魔法の」16352文字の後、返された値の間に ");jsonp1349260900225(" が挿入されます。 (1349260900225 <-- これは変更されますが、形式は同じままです) そして、これはその後 16352 文字ごとに続きます。側では、応答を取得して通常どおりに解析しようとしたため、出力のランダムな領域にエラーが表示されました。

以前にこの問題に直面した人はいますか?16352 文字は実際には多くないため、この問題を回避するために長さを短くすることはできませんでした。

前もって感謝します。

firebug から返される値のスニペットを次に示します。

lign=\u0027absMiddle\u0027 /\u003e\u003cimg src=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027 align=\u0027absMiddle\u0027 /\u003e \u003cimg src=\u0027http://squarelet .com/images/smiley/Smile.gif\u0027 align=);jsonp1349260900225(u0027absMiddle\u0027 /\u003e\u003cimg src=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027 align=\u0027absMiddle \u0027 /\u003e \u003cimg src=\u0027http://squarelet.com/images/smiley/Smile.gif\u0027 align=\u0027absMiddle\u0027 /\u003e\u003cimg src=\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
4

1 に答える 1

0

MaxJsonLengthをより大きな値に設定する必要があります。そのプロパティは、おそらくあなたを制限しているものです。

于 2012-10-03T12:00:33.347 に答える