我想获取Cape网址,但是访问它时遇到了一些麻烦。
{
"timestamp": <java time in ms>,
"profileId": "<profile uuid>",
"profileName": "<player name>",
"signatureRequired": true, // Only present if ?unsigned=false is appended to url
"textures": {
"SKIN": {
"url": "<player skin URL>"
},
"CAPE": {
"url": "<player cape URL>"
}
}
}
我尝试了多种json方法,但我不知道该怎么做
JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
dynamic dobj = jsonSerializer.Deserialize<dynamic>(thestring);
object result = dobj["textures"][0]["CAPE"][0]["url"];
答案 0 :(得分:1)
似乎您正在尝试将已解析的json中的对象视为某种数组。
在您使用过[0]
的两个地方,它都是在一个对象上完成的。这将查找名称为0
的键,该键不存在。
相反,您应该直接使用json键。
您的最终代码应如下所示:
JavaScriptSerializer jsonSerializer = new JavaScriptSerializer();
dynamic dobj = jsonSerializer.Deserialize<dynamic>(thestring);
object result = dobj["textures"]["CAPE"]["url"];