如何使用JSON和jQuery将文件发送到服务器
我必须使用jQuery将文件发送到我的服务器。我如何使用JSON来做到这一点?如何使用JSON和jQuery将文件发送到服务器
文件类型不重要,我打算在我的服务器应用程序上收到一个byteArray或类似的东西。
如果它有帮助我正在使用ASP.NET应用程序,但我的问题不是我在服务器端处理的方式,问题是如何使用jQuery发送文件数据。
我发现了一些使用Flash文件的jQuery上传插件,其他人不使用Flash,但我真正想知道的是该过程是如何工作的,而不仅仅是使用某人已经创建的东西!
jQuery是JavaScript。我想你的意思是通过Ajax发送无法完成的数据。您可以做的最好的事情是将iframe用于将文件上传到临时目录(而不是默认临时目录)的页面,然后将该信息返回到父页面以获取文件的保存位置,然后使用它。
无法使用Ajax将文件上载到服务器。这太不安全了。
我收回上述NOW
声明现在,您可以使用Javascript这对于一个新手来说,了解非常复杂的,但现在可能的情况下,这一问题被回答不像发布/下载文件的日期
文件上传不会通过AJAX请求工作。它需要是完整的HTTP请求(POST)。任何使用的jQuery插件通常使用基于Flash或Java的applet,或使用隐藏在页面上的iframe完成真正POST的隐藏iframe技巧。
你可以使用$ .ajax调用一个HTTP Post,你不需要做任何手工操作文件内容到json。如果您的表单包含输入(type =“file”),则有效内容将位于HTTP请求中。如果你能给我更多关于你的代码的细节,我可以发送一个代码示例。
我强烈建议为此使用valum的plugin。它有很多支持,并且在浏览器开始实施HTML5支持(如FileReader等)时一直更新。使发送“AJAX”文件请求变得更容易和更轻松。
https://stackoverflow.com/search?q=valums
编辑:对不起,没有充分阅读您的问题 - 我读标题,读第几段,我想我知道你要找的人。恰巧是最后一段有一个我没有看到的排除条款。
正如我所提到的,我期待知道它的过程如何工作! – 2011-05-26 17:40:58
糟糕,我以为你在问一个简洁的编程问题。阅读来源。 – 2011-05-26 17:49:08
非常感谢您的回复,但是您提到了(最后一段)我并未在零部件上进行认证!我很想了解这个过程! – 2011-05-26 17:59:18
我使用$ .ajaxFileUpload试过(http://www.phpletter.com/Demo/AjaxFileUpload-Demo/),如果你正在使用ASP.NET MVC,你可以如下
检索的文件public ActionResult UploadFiles(List<HttpPostedFileBase> uFile)
用法$ .ajaxFileUpload的:
$.ajaxFileUpload
(
{
url: "/Controller/UploadFiles",
secureuri: false,
fileElementId: 'uFile', // the id of the file input controls holding the references to the files
dataType: 'json',
success: function (data, status) {
// needs to handle the json return
},
error: function (data, status, e) {
// same as error
}
}
)
对我来说它工作得很好。
我正在规划这个过程,只是检查可能性。如果你有一些工作代码,这可以帮助我非常欣赏。 tnkx – 2011-05-26 17:11:33
ASP.NET Web窗体或MVC? – 2011-05-26 20:05:27
我的问题不是服务器端,我不知道如何发送文件到服务器使用像jQuery的客户端脚本。但我使用webforms – 2011-05-26 20:15:20