Получить данные из дочерних элементов в файле xml - PullRequest
0 голосов
/ 03 мая 2020

У меня есть xml вывод с сервера. Мне нужно получить некоторые выбранные данные, используя ajax. Я пробовал приведенные ниже коды, и я застрял в какой-то момент.

<response>
<returncode>SUCCESS</returncode>
<meetings>
    <meeting>
        <meetingName>Home Room</meetingName>
        <meetingID>455457asdsad4sad454sad</meetingID>
        <internalMeetingID>
        d23b20e086e2a21a870981e3f82004d0b1a099e5-1588490116906
        </internalMeetingID>
        <createTime>1588490116906</createTime>
        <createDate>Sun May 03 07:15:16 UTC 2020</createDate>
        <voiceBridge>44989</voiceBridge>
        <dialNumber>613-555-1234</dialNumber>
        <attendeePW>CpEsQgpfhDYm</attendeePW>
        <moderatorPW>zIgFqCvXlhwM</moderatorPW>
        <running>true</running>
        <duration>0</duration>
        <hasUserJoined>true</hasUserJoined>
        <recording>true</recording>
        <hasBeenForciblyEnded>false</hasBeenForciblyEnded>
        <startTime>1588490116944</startTime>
        <endTime>0</endTime>
        <participantCount>1</participantCount>
        <listenerCount>0</listenerCount>
        <voiceParticipantCount>0</voiceParticipantCount>
        <videoCount>0</videoCount>
        <maxUsers>0</maxUsers>
        <moderatorCount>1</moderatorCount>
        <attendees>
            <attendee>
                <userID>gl-mmhpbyghtjau</userID>
                <fullName>lahiru</fullName>
                <role>MODERATOR</role>
                <isPresenter>true</isPresenter>
                <isListeningOnly>false</isListeningOnly>
                <hasJoinedVoice>false</hasJoinedVoice>
                <hasVideo>false</hasVideo>
                <clientType>HTML5</clientType>
            </attendee>
        </attendees>
        <metadata>
            <bbb-origin-version/>
            <bbb-origin-server-name>lahiru-test.lk</bbb-origin-server-name>
            <bbb-origin>Greenlight</bbb-origin>
            <gl-listed>false</gl-listed>
        </metadata>
        <isBreakout>false</isBreakout>
    </meeting>
</meetings>
</response>

Я использую этот код ajax, чтобы получить некоторые значения из него. Я могу получить "код возврата" очень легко. Но у меня нет идеи о том, как получить MeetingName, участники данных.

    downloadUrl(api_url + "getMeetings?checksum=" + checksum, function(data) {
        var xml = data.responseXML;
        var returncode = xml.getElementsByTagName("returncode")[0].childNodes[0].nodeValue;
        console.log(returncode);
        var meetings = xml.getElementsByTagName("meetings");

        $(meetings).find('meetings').each(function() {
             if (room_name == $(this).find('meetingName').text()) {
              var trueOrFalse = $(this).find('meetingName:contains("'+room_name+'")').text();
              console.log('work for ' + y + ' is ' + trueOrFalse);
             }
        });
    });
    function downloadUrl(url, callback) {
      var request = window.ActiveXObject ?
          new ActiveXObject('Microsoft.XMLHTTP') :
          new XMLHttpRequest;

      request.onreadystatechange = function() {
        if (request.readyState == 4) {
          request.onreadystatechange = doNothing;
          callback(request, request.status);
        }
      };


      request.open('GET', url, true);
      request.send(null);

    }
    function doNothing() {}

Как изменить выше, чтобы получить дочерние узлы?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...