AWS JSON 异常 - JSONObject 文本必须以 1 处的 '{' 开头 [字符 2 行 1]



>我遇到了json错误,虽然

System.out.println((int)text.trim().charAt(0));

返回 123,这意味着它以大括号开头。我完全没有想法,我也试图trim()而不是toString().

InputStream bis = new ByteArrayInputStream(bytes);
InputStream is = new GZIPInputStream(bis);
byte[] unPackedBytes = IOUtils.toByteArray(is);
String text = new String(unPackedBytes, "UTF-8");
JSONObject obj = new JSONObject(text.toString());

这很奇怪,因为当我输入 json 时它不会给出任何错误,但是当我给出压缩文件时,它确实会给出错误,但压缩文件的输出与 json 完全相同,所以我很困惑。这是Json。

{
    "id": 123,
    "providerId": 123,
    "externalTrackId": "068d",
    "genres": [
        {
            "genre": "Rap/Hip-Hop",
            "subGenre": "Rap/Hip-Hop"
        }
    ],
    "title": {
        "title": "The "
    },
    "artists": [
        {
            "name": {
                "primary": {
                    "value": "J-"
                }
            },
            "role": "Artist"
        }
    ],
    "contributors": [],
    "release": {
        "id": 123,
        "title": {
            "title": "The "
        },
        "artist": {
            "primary": {
                "value": "J"
            }
        },
        "externalId": "gener2cec9477d",
        "genre": {
            "genre": "Rap/Hip-Hop",
            "subGenre": "Rap/Hip-Hop"
        },
        "copyrightYear": 0
    },
    "trackCountInMedia": 0,
    "mediaCountInRelease": 0,
    "signature": {
        "url": "https:",
        "id": 123,
        "type": "FULL",
        "audioType": "MUSIC",
        "creation": "2013-"
    },
    "label": "Unknown",
    "lastMod": "2013-01-04T16:02:57.607Z"
}

干杯

我找到了答案,这是我的一个错误,因为我没有从 Base64 解码数据。这很奇怪,因为它看起来完全相同的输出,但事实并非如此。

感谢@Jhanvi试图帮助我。

相关内容

最新更新