Javascript XMLHttpRequest读取外部文件

Javascript XMLHttpRequest读取外部文件,javascript,http,cross-browser,xmlhttprequest,Javascript,Http,Cross Browser,Xmlhttprequest,我希望通过JavaScript(在客户端浏览器上运行)检索文本文件中包含的数据(来自给定URL) 到目前为止,我已经尝试了以下方法: var xmlhttp, text; xmlhttp = new XMLHttpRequest(); xmlhttp.open('GET', 'http://www.example.com/file.txt', false); xmlhttp.send(); text = xmlhttp.responseText; 但它只适用于Firefox。有没有人建议在每个

我希望通过JavaScript(在客户端浏览器上运行)检索文本文件中包含的数据(来自给定URL)

到目前为止,我已经尝试了以下方法:

var xmlhttp, text;
xmlhttp = new XMLHttpRequest();
xmlhttp.open('GET', 'http://www.example.com/file.txt', false);
xmlhttp.send();
text = xmlhttp.responseText;
但它只适用于Firefox。有没有人建议在每个浏览器中都使用此功能


谢谢

它使用
xmlhttp=newActivexObject(“Microsoft.xmlhttp”)在IE旧版本中。Chrome、Firefox和所有明智的浏览器都使用xhr

坦率地说,如果您想要跨浏览器兼容性,请使用jquery

这很简单:

var text="";
$.get(url, function(data){text=data;//Do something more with the data here. data variable contains the response})
以前无法使用XMLHttpRequest对象上载二进制数据,因为它无法忍受FormData对象的使用(无论如何,FormData在当时并不存在)。然而,自从新对象和XMLHttpRequest的第二个版本出现以来,这一“壮举”现在很容易实现


这很简单,我们只是将文件对象花在FormData对象上并上传它

感谢jQuery提示,它真的让事情变得更简单了。问题是,现在Chrome抛出了以下错误:
XMLHttpRequest无法加载http://example.com/file.txt. 访问控制允许原点不允许原点为空。
。你知道为什么会发生这种情况吗?那是因为你只能访问页面所在主机上的文件。例如,如果在中使用此选项,则只能访问上的文件,而不能访问internet上的任何其他位置。因此将被阻止。我想你是在本地主机上使用这个。更具体地说,如果页面打开,您只能访问/*而不是大多数人强加的安全限制browsers@JohnDoe请阅读关于跨源请求共享的内容。多亏了这两个方面,尽管我更喜欢jQuery方法(这样我就不必为每个浏览器制定自定义解决方案),但您能对您的答案提供一些解释吗,因为只有代码,加上法语注释(改为英语),可能被视为不完整的答案。我认为这甚至不能回答这个问题。问题是关于检索一个文件,这段代码发送一个文件。
var xhr = new XMLHttpRequest();
xhr.open('POST', '/uploadFile'); 
var form = new FormData();
form.append('file', fileInput.files[0]);
xhr.send(form);