0

我正在尝试使用 xml2js 库解析 Node.js 中的 XML 文件。但是,我无法访问该 XML 文件的嵌套内容。这是我的 XML 文件的样子:

<?xml version=\"1.0\" ?>
<ItemSearchResponse
xmlns=\"http://webservices.amazon.com/AWSECommerceService/2013-08-01\">
<OperationRequest>...</OperationRequest>
<Items>
    <Item>
        <LargeImage>..</LargeImage>
    </Item>
    <Item>...</Item>
    <Item>...</Item>
    <Item>...</Item>
</Items>

我正在尝试访问此 xml 文件中的 LargeImage 标记。截至目前,我正在尝试通过以下方式访问子节点:

        var xml = response.responseBody; //this is an api call which returns the XML file
        parser.parseString(xml, function (err, result) {//parser is an object of xml2js
            console.log(result['ItemSearchResponse']['Items']);
        });
        //console.log("Raw response body: ", response.responseBody);
        }).catch((err) => {
            console.error("Something went wrong! ", err);
        });

为此,这将打印在控制台上:

[ { Request: [ [Object] ],
TotalResults: [ '226308' ],
TotalPages: [ '22631' ],
MoreSearchResultsUrl: 
 [ 'https://www.amazon.in/gp/search?linkCode=xm2&SubscriptionId=AKIAIQWXVVSOIXRWDBIQ&keywords=tshirt&tag=theaedifex-21&creative=165953&url=search-alias%3Daws-amazon-aps&camp=2025' ],
Item: 
 [ [Object],
   [Object],
   [Object],
   [Object],
   [Object],
   [Object],
   [Object],
   [Object],
   [Object],
   [Object] ] } ]

我正在尝试访问 Items 末尾的多个对象。对我的问题的任何解决方案或方向都会非常有帮助。

4

1 回答 1

0

经过一番反复试验,我改变了

result['ItemSearchResponse']['Items']

result.ItemSearchResponse.Items[0].Item[0].LargeImage[0].URl

以获得所需的结果。

于 2018-05-02T05:04:45.337 回答