Как извлечь данные из вложенного XML-файла без тегов? - PullRequest
0 голосов
/ 01 мая 2018

Я пытаюсь проанализировать XML-файл в Node.js с помощью библиотеки xml2js. Однако я не могу получить доступ к вложенному содержимому этого 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>

Я пытаюсь получить доступ к тегу LargeImage в этом XML-файле. На данный момент я пытаюсь получить доступ к подузлам следующим образом:

        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] ] } ]

Я пытаюсь получить доступ к нескольким объектам в конце Предметов. Любое решение или направление моей проблемы было бы очень полезно.

1 Ответ

0 голосов
/ 02 мая 2018

После небольшого количества проб и ошибок я изменил

result['ItemSearchResponse']['Items']

до

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

, чтобы получить требуемый результат.

...