var resposeXML='<?xml version="1.0" encoding="UTF-8"?> \
<GetOrdersResponse xmlns="urn:ebay:apis:eBLBaseComponents"> \
<Timestamp>2016-11-21T13:53:57.509Z</Timestamp> \
<Ack>Success</Ack> \
<Version>991</Version> \
<Build>E991_INTL_APIXO_18185083_R1</Build> \
<PaginationResult> \
<TotalNumberOfPages>2</TotalNumberOfPages> \
<TotalNumberOfEntries>130</TotalNumberOfEntries> \
</PaginationResult> \
<HasMoreOrders>true</HasMoreOrders> \
<OrderArray> \
<Order> \
<OrderID>281928885737-1591172077018</OrderID><OrderStatus>Completed</OrderStatus><AmountPaid currencyID="INR">204.0</AmountPaid> \
</Order> \
</OrderArray> \
</GetOrdersResponse> ';
var outputDocument = XmlService.parse(resposeXML);
var rootEle=outputDocument.getRootElement();
Logger.log(resposeXML);
Logger.log(" rootEle " + rootEle);
Logger.log(" rootEle " + rootEle.getChild('Timestamp'));
//alternately if i use index instead of name its returning the element
Logger.log(" rootEle " + rootEle.getChildren()[0]);
Logger.log(" rootEle " + rootEle.getChildren('Timestamp'));
var Timestamp=rootEle.getChild("Timestamp").getText();
Logger.log(" rootEle " + rootEle.getChild('Timestamp'));
этой линии возвращение нулевойУ меня возникли трудности с разбором XML. Google Appscript XMLSERVICE с использованием метода getchild (name), всегда возвращающего null?
попеременно, если я использовать индекс вместо имени его возвращение элемента, но я не нужно использовать индексировать каждый раз, когда для всех элементов в моем XML, как порядок элемента может отличаться есть некоторый элемент может пропустить некоторое время в другом порядке. например, индекс ack равен 1, если временной метки там нет 0.
поэтому мне нужно перейти по xml на основе имени элемента, а не индекса элемента.
, пожалуйста, помогите разобраться в проблеме.
Logger.log(" rootEle " + rootEle.getChildren()[0]);
я попытался это ниже кода ничего не возвращает
Logger.log(" rootEle " + rootEle.getChildren('Timestamp'));
Выход выглядит следующим образом
[16-11-21 22:38:42:923 PST] <?xml version="1.0" encoding="UTF-8"?> <GetOrdersResponse xmlns="urn:ebay:apis:eBLBaseComponents"> <Timestamp>2016-11-21T13:53:57.509Z</Timestamp> <Ack>Success</Ack> <Version>991</Version> <Build>E991_INTL_APIXO_18185083_R1</Build> <PaginationResult> <TotalNumberOfPages>2</TotalNumberOfPages> <TotalNumberOfEntries>130</TotalNumberOfEntries> </PaginationResult> <HasMoreOrders>true</HasMoreOrders> <OrderArray> <Order> <OrderID>281928885737-1591172077018</OrderID><OrderStatus>Completed</OrderStatus><AmountPaid currencyID="INR">204.0</AmountPaid> </Order> </OrderArray> </GetOrdersResponse>
[16-11-21 22:38:42:923 PST] rootEle [Element: <GetOrdersResponse [Namespace: urn:ebay:apis:eBLBaseComponents]/>]
[16-11-21 22:38:42:924 PST] rootEle null
[16-11-21 22:38:42:927 PST] rootEle [Element: <Timestamp [Namespace: urn:ebay:apis:eBLBaseComponents]/>]
[16-11-21 22:38:42:928 PST] rootEle
Пожалуйста, помогите мне, где я делаю wrong.this имеет becom nighmare для меня