我是ajax / javascript的新手。我试图解析下面ajax请求的响应:
function invokeMediationRestService(rql) {
var resourceinfo;
var request = $
.ajax({
type : "POST",
url : "REST_URL",
async : false,
data : 'SOME_DATA',
contentType : "application/xml",
dataType : "xml",
success: function(response) {
}
});
return resourceinfo;
}
对于此请求,我期待如下响应: JSON:
{ " xml-fragment":{ " @ payloadMode":" JSON", " serializedPayload":" {\" items \":[{\" $ param \":\" Response \&# 34; \"模式\":\" OUT \" \" $值\":[{\"资源\& #34;:[{\"的firstName \":\" ABC \" \"电子邮件\":\" abc2.klm @ xyz.com \" \"别名\":\" cklm28 \" \"管理器\":\&#34 ; VBU \" \"位置\":\" QWERTY \" \"部门\":\" asdfg \",\" lastName \":\" klm \",\" displayName \":\" klm,abc \" \"数据筒\":\" 456 \" \"容器名称\":\" sfdghjjk \& #34; \"组ID \":{\" GUID \":\" 23454356wert \" \"名称\&# 34;:\" qweryugg \" \"标签\":\" asdfgfdg \" \" $类型\&#34 ;:\" sdfgdsf \"},\" $类型\":\" sdfgsdfg \"},{\"的firstName \& #34;:\" ABC \" \"电子邮件\":\" abc3.klm@xyz.com \" \&#34 ;别名\":\" cklm29 \" \"管理器\":\" sdfgrt \" \"位置\":\" QWERTY \" ,\"部门\":\" sdfghj \" \" lastName的\":\" KLM \" \ " displayName \":\" klm,abc(zxa2)\",\" containerID \":\" 456 \&#34 ; \"容器名称\":\" sfdghjjk \" \"组ID \":{\" GUID \" :\" 23454356wert \" \"名称\":\" qweryugg \" \"标签\":\ " dfgh \" \" $类型\":\" dghdh \"},\" $类型\&#34 ;: \" dfghgfh \"}]},{\" $ PARAM \":\" dfghj \" \" $值\& #34;:[\" sdfghj \&#34],\"类型\":\"字符串\" \"模式\& #34;:\" IN \"}]}" } }
请注意:" items [0]。$ value [0] .resource"下有多条记录。 我想提取这些记录并将其返回。
有人可以帮忙吗?
谢谢, 兰吉特
答案 0 :(得分:0)
这可能是一个小小的试验和错误 - 我有时会对JSON感到困惑,忘记哪些部分是数组,哪些部分只是可读的。
在我使用
之前我一直在处理JSONvar json = JSON.parse(JSON.stringify(data));
获取已解析的对象。然后,您可以使用json.items
之类的内容访问键/值对。如果可以有多个项目,我认为您希望从正确的部分读取类似json.items[0].$value[0].resource[0].name
的内容,但是根据您的JSON响应布局的灵活性,您可能需要指定索引(使用{{1} })在其他方面。