【问题标题】:How to parse a u' prefixed JSON response in Android如何在 Android 中解析带有 u' 前缀的 JSON 响应
【发布时间】:2017-07-20 20:16:35
【问题描述】:

我正在尝试解析 JSON 响应,但所有字段都以 u' 为前缀。我搜索了它的 Unicode 格式,没有实现 UTF-8,但最终如何在 Android 中解析它?

"{u'response': [{u'status': u'ONGOING', u'challenge_type': u'Monthly Challenges', and so on

在线 JSON 查看器正在对其进行格式化,但由于它是 Unicode,所以都是字符,这不是我们解析 JSON 响应的方式。

在我的代码中,即使创建 JSONObject 也会引发异常。

任何指向正确路径的解决方案或提示都会非常有帮助。

JSON link

对于那些投反对票的人,请在投反对票之前留下一个解决方案,真的很想知道我错过了什么。

【问题讨论】:

  • 您是否在您的真实数据(即 API 的响应)或 logcat/console 或 python 输出等中看到了这一点?
  • 每当我打开 API 时在浏览器中。使用 logcat/debug 在 OKHttp 响应字符串中相同。

标签: android json unicode


【解决方案1】:

那不是 JSON。这是一个 Python dict 文字。尽管 Python 和 JS 文字表面上很相似,但它们远非交叉兼容。

您可以使用ast.literal_eval 从 Python 中解析它,但这在 Android 中用处不大,而且它会是一个非常奇怪的 Web API,它选择 Python 文字作为其输出格式。如果您的 Web 服务本应返回 JSON,但实际上返回的是 JSON,则它已损坏。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-01-26
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-04-07
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多