Поддержка Aurelia для XML

Будет ли предоставлена ​​поддержка для чтения / записи XML-файла? Если я правильно прочитал документы Aurelia, Aurelia-fetch-client и aurelia-http-client настроены для / ожидающих типов ответов JSON (HTTP-сервисы в Aurelia-документах). У меня очень большой проект преобразования SPA и я хочу использовать Aurelia. Однако все содержимое страницы и указатели выводятся в XML-документе и отображаются через идентификаторы GUID. Нужно ли создавать собственную подпрограмму для XML в JSON для использования с Aurelia?

1 ответ

Решение

Спецификация API Fetch в настоящее время не имеет методов для получения / преобразования потока ответов в виде XML-документа ( https://developer.mozilla.org/en-US/docs/Web/API/Response). (Тот же API выборки используется Aurelia, если браузер поддерживает его или использует полифилл (whatwg fetch), который реализует логику сопоставления с API)

Что вы можете сделать, это получить поток в виде текста, а затем проанализировать вывод с помощью библиотеки, которая может анализировать XML.

Например, с помощью метода parseXML ( https://api.jquery.com/jQuery.parseXML/) в jQuery:

import {autoinject} from 'aurelia-framework';
import {HttpClient} from 'aurelia-fetch-client';
import 'fetch';
import * as $ from 'jquery';

@autoinject
export class XMLFetchTest {

  constructor(private http: HttpClient) {
    http.configure(config => {
      config
        .useStandardConfiguration()
        .withBaseUrl('/src/');
    });
  }

  public activate() {
    return this.http.fetch('test.xml')
      .then(response => response.text())
      .then(text => {
        let doc = $.parseXML(text);
      }));
  }
}
Другие вопросы по тегам