Javascript 如何在客户机上获取/读取xml文件?
我需要创建一个网页,用户在其中提交一个XML文件,我使用该文件动态更新页面 我遵循一个教程,并在javascript文件中包含以下代码:Javascript 如何在客户机上获取/读取xml文件?,javascript,ajax,servlets,file-upload,Javascript,Ajax,Servlets,File Upload,我需要创建一个网页,用户在其中提交一个XML文件,我使用该文件动态更新页面 我遵循一个教程,并在javascript文件中包含以下代码: function uploadFile(){ var path = "processXML?action=process&id=" + escape(fileChooser.value); req = initRequest(); req.open("GET", path, true); req.onreadystate
function uploadFile(){
var path = "processXML?action=process&id=" + escape(fileChooser.value);
req = initRequest();
req.open("GET", path, true);
req.onreadystatechange = callback;
req.send(null);
}
我还在Javaservlet中设置了URLpattern/processXMl。虽然我正在学习一些新的东西,但这不是我想要达到的。open()方法正在指定服务器上的文件
如何从客户机读取/接收XML文件,以便在服务器上的Java类中处理它?单独发送所选文件的文件名(或某些较差的浏览器中的文件路径)作为请求参数根本不起作用。您将无法在服务器端以任何方式检索文件内容(除非webbrowser和webbrowser碰巧在同一台机器上运行,但这当然不会在实际生产中发生)。您需要让客户端发送文件内容。文件名只是元数据信息 在HTML5/XHR2出现之前,通过ajax发送文件内容是不可能的。HTML5/XHR2相对较新,目前仍在广泛使用的所有浏览器都不支持。我建议改为通过隐藏iframe中的表单模拟异步文件上载。有很多JavaScript插件可以实现这一点,比如和 要获取servlet中的文件内容,通常需要使用新方法,或者如果已经使用servlet 3.0,则使用新方法 另见: