2016-11-17 88 views
1

是否支持XML文件讀/寫?如果我正確讀取了Aurelia文檔,Aurelia-fetch-client和aurelia-http-client配置爲/期待JSON響應類型(Aurelia文檔中的HTTP服務)。我有一個非常大的SPA轉換項目,並希望使用Aurelia。但是,所有頁面內容和指針都以XML文檔形式輸出,並通過GUID進行映射。我是否需要構建XML到JSON的自定義例程以供Aurelia使用?Aurelia支持XML

回答

4

Fetch API規範目前沒有任何方法將響應流作爲XML文檔(https://developer.mozilla.org/en-US/docs/Web/API/Response#Methods)進行轉換。 (如果瀏覽器支持,則使用Aurelia使用的相同提取API,或者使用實現API匹配邏輯的填充(whatwg提取))

您可以做的是將流作爲文本獲取,然後解析輸出用一個可以解析XML的庫。

例如與jQuery的parseXML(https://api.jquery.com/jQuery.parseXML/)方法:

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); 
     })); 
    } 
} 
+0

感謝您的答覆。我認爲這將是這樣的事情。我真的希望避免Angular--看起來這是解決方案。我只是希望在框架中有一些東西。 – RT1138