错误:获取结果时,有效的UTF32值介于0x000000和0x10fff之间

本文关键字:0x000000 之间 0x10fff UTF32 获取 结果 有效 错误 | 更新日期: 2023-09-27 17:59:10

我在Facebook上点击特定帖子时出错:

这是要运行的代码:只需将to令牌替换为您的。。。

FacebookClient client = new FacebookClient(yourTokenHere);
var result = client.Batch(
                new FacebookBatchParameter(HttpMethod.Get, "/198907640664_196037430420783"),
                new FacebookBatchParameter(HttpMethod.Get, "/198907640664_196037430420783/comments", new Dictionary<string, object> { { "limit", 20 } }) { Data = new { name = "myposts", omit_response_on_success = false } }
            );

收到的错误为:

错误:有效的UTF32值介于0x000000和0x10fff之间(包括0x000000和0x00fff),并且不应包括代理代码点值(0x00d800~0x00dfff)。参数名称:utf32

堆栈跟踪为:

System.ArgumentOutOfRangeException:有效的UTF32值介于0x000000和0x10fff之间(包括0x000000和0x00fff),并且不应包括代理项代码点值(0x00d800~0x00dfff)。参数名称:utf32在System.Char.ConvertFromUtf32(Int32 utf32)在SimpleJson.SimpleJson.ParseString(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseValue(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseObject(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseValue(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseArray(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseValue(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseObject(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseValue(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseObject(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseValue(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseArray(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseValue(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseObject(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.ParseValue(Char[]json,Int32&index,Boolean&success)在SimpleJson.SimpleJson.TryDeserializeObject(字符串json,对象&Object)在SimpleJson.SimpleJson.DescializeObject(字符串json)在Facebook.JsonSerializer.SimpleJsonSerializar.DeserializeObject(String.json)在FacebookClient.ProcessBatchResult(对象结果)在Facebook.FacebookClient.Batch(FacebookBatchParameter[]batchParameters)

我在其他调用中也会遇到此错误。

提前感谢您的帮助。

错误:获取结果时,有效的UTF32值介于0x000000和0x10fff之间

刚刚发现Prabir(Facebook C#SDK的风云人物)发布了包含此错误修复的SimpleJson v0.7的新版本。http://simplejson.codeplex.com/releases/view/69446

并将Facebook C#SDK中的SimpleJson更新为v0.7http://facebooksdk.codeplex.com/SourceControl/changeset/changes/4f05d3ba8c17

我试过了,效果很好!

感谢Prabir