簡體   English   中英

如何使用$ .ajax讀取本地xml文件?

[英]How to read local xml file using $.ajax?

我正在嘗試構建Firefox擴展,我需要為其讀取本地xml文件,但無法使用$.ajax讀取文件。 我的代碼如下:

$.ajax({
        type: "GET",
        url: "file:///C:/Users/Mitul Gandhi/Desktop/Library_en.xml",
        dataType: "xml",
        success: function (xml) { }
});

出於安全原因,javascript ajax調用無法讀取本地文件內容。

要在Firefox插件中讀取本地文件,您可以使用Components (文件IO),如下所示:

function Read(file)
{
    var ioService=Components.classes["@mozilla.org/network/io-service;1"]
        .getService(Components.interfaces.nsIIOService);
    var scriptableStream=Components
        .classes["@mozilla.org/scriptableinputstream;1"]
        .getService(Components.interfaces.nsIScriptableInputStream);

    var channel=ioService.newChannel(file,null,null);
    var input=channel.open();
    scriptableStream.init(input);
    var str=scriptableStream.read(input.available());
    scriptableStream.close();
    input.close();
    return str;
}

var contents = Read("C:/Users/Mitul Gandhi/Desktop/Library_en.xml");

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM