基于先前检索到的“二进制”数据POST\'multipart数据

问题描述

|| 我正在尝试模拟文件上传到接受\“ normal \”文件上传http请求的Web服务器,但是使用典型的input type = file form元素获取文件数据,我希望POST \ ed的内容来自前一个HTTP GET的结果 我想我已经使用类似的方法完成了GET部分
function load_binary_resource(url) {
    var req = new XMLHttpRequest();
    req.open(\'GET\',url,false);
    req.overrideMimeType(\'text/plain; charset=x-user-defined\');
    req.send(null);
    if (req.status != 200) {
        return \'\';
    }
    return req.responseText;
}
现在的问题是我该如何过帐,以便接受更典型文件上传HTTP请求的服务器代码可以保持不变。 我一直在尝试使用jQuery Forms插件,但是似乎无法将二进制内容POST \ ed到服务器 一切帮助当然热烈欢迎! 谢谢 彼得     

解决方法

        如果我了解您,并且除非我弄错了,否则您还不能使用XMLHttpRequest通过浏览器本地上传文件。我相信,Firefox现在有可能。 当研究同一件事时,我发现这些有用: https://developer.mozilla.org/en/XMLHttpRequest https://developer.mozilla.org/en/using_files_from_web_applications https://developer.mozilla.org/en/DOM/File.getAsBinary 我已经看到了针对非壁虎浏览器的sendAsBinary的一些解决方法,但是我敢肯定其他人在这方面也了解更多。我放弃了相当类似的东西,因为我的目标浏览器包括IE。我最终使用Uploadify,当纯JavaScript方法不可用时,它将自动切换到Flash或其他方法。 希望能对您有所帮助(甚至与您的要求遥不可及)