Javascript兼容Chrome Browser的xml读取

虽然现在文件传输的方式主流的是用JSON,但是最近工作中用到了XML的文件读取,这个问题折腾了好一会,记录一下成功突破的方法。

读取XML




    
    
    
    Document
    


    

测试读取方法!

XML文件


 
   
    Web_server  
    00001  
    200  
    200  
      
    00002
  
   
    router  
    00002  
    400  
    400  
      
    00001
    00003
  
   
    router  
    000003  
    600  
    200  
      
    00002 
   


爬坑指南

如果使用Chrome浏览器的话,即使你把以上的代码如法炮制,你还是无法读取到XML文件,在调试控制台会报错:

svg.html:32 Failed to load file:///.../xx.xml: Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https.

Uncaught DOMException: Failed to execute 'send' on 'XMLHttpRequest': Failed to load '.../xxx.xml'.
//反正就是死活读取不到

主要是因为Chrome浏览器的安全机制问题,并且使用到http请求,不允许读取本地XML文件,解决办法是将其运行在服务器端。我这里将其放在了Tomcat上去跑,即使用Tomcat运行静态文件。在Tomcat的webapp文件夹下新建一个test文件夹,把静态文件放在里面,然后运行Tomcat,浏览器访问 localhost:8080/test/xxx.html

    cd Tomcat的文件路径/bin
    ./startup.sh          //运行
    ./shutdown.sh        //停止
    

网站与 个人博客 同步更新,欢迎点击

你可能感兴趣的:(Javascript兼容Chrome Browser的xml读取)