【问题标题】:FacebookClient GetTaskAsync sometimes returns invalid JSON string(UWP 10)FacebookClient GetTaskAsync 有时会返回无效的 JSON 字符串(UWP 10)
【发布时间】:2016-05-15 13:59:32
【问题描述】:

我正在尝试使用 FacebookClient API 从 Facebook 获取数据。 但是我有时会收到错误“无效的 JSON 字符串”。 奇怪的是,有时我确实使用相同的任务获取数据。

这是我的代码

    public async void GetData(String AccessToken, String task)
    {
        FacebookClient fbclient = new FacebookClient(AccessToken);
        try {
            var res = await fbclient.GetTaskAsync(task);//me/feed
            String data = res.ToString();
            /*IDictionary<string, object> o3 = (IDictionary<string, object>)await fbclient.GetTaskAsync(task);
            JsonObject o2 = (JsonObject) await fbclient.GetTaskAsync(task);*/
        }
        catch (Exception e)
        {

        }
    }

var res = ... 给出错误。我不知道为什么它有时会起作用,而有时却不起作用。

提前致谢。

【问题讨论】:

  • 当它说它不是一个有效的json字符串时是什么字符串?
  • 感谢您的回复,它说 NULL 我根本没有得到任何数据。

标签: c# json facebook win-universal-app


【解决方案1】:

SDK 最近停止在 Windows 10 应用 (UWP) 中运行,但在 Windows 8.1 应用中继续正常运行。

已在 facebook-csharp-sdk 的 GitHub 页面上报道。原因是 UWP 默认使用较新的 HTTP/2 协议,这会导致问题。不幸的是,还没有修复。

更新There is a temporary solution,如果您打开 Internet Explorer > Internet 选项 > 高级 > 禁用 HTTP 1.1通过代理的 HTTP 1.1,然后 SDK 将继续在 UWP 运行时工作。显然不是解决问题的真正方法,但它使我们离找到根本原因更近了一步。

【讨论】:

  • 如果您觉得这很有用,请将我的回复标记为答案。谢谢。
  • @AndrewAu 重新评论,这实际上是一个很好的答案,所以添加它作为答案没有问题,这应该是:) 但是,一般来说,评论限制是有原因的please see this post 详细说明您可以做什么。再次,很好的答案。
【解决方案2】:

那些正在努力寻找 Windows UWP App 与 Facebook 集成的永久解决方案的人,这里有一个更新的 SDK。

在 GitHub 中 https://github.com/Microsoft/winsdkfb

在 Nuget.org 中 https://www.nuget.org/packages/winsdkfb/

您可以使用这个 Github SDK 或从 Nuget 包下载。

登录后,FBSession 对象包含用户完整信息,可以替代 fbclient.GetTaskAsync("me")。

希望对你有帮助

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-07-18
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 1970-01-01
    • 2011-11-27
    • 1970-01-01
    • 2019-03-22
    相关资源
    最近更新 更多