【发布时间】:2012-10-29 15:56:39
【问题描述】:
我正在使用 json 服务(.net RIA 服务)将数据从 Extjs 推送到服务器。目前我需要将文档上传到服务器。我看到了一些使用表单提交到 php 文件的示例。
这可以通过json服务实现吗?或者是否有必要创建一些我可以接受表单提交的服务器逻辑?
是否可以从客户端读取一些二进制数据并作为json数据推送到服务器?
【问题讨论】:
标签: json file-upload extjs ria extjs4.1
我正在使用 json 服务(.net RIA 服务)将数据从 Extjs 推送到服务器。目前我需要将文档上传到服务器。我看到了一些使用表单提交到 php 文件的示例。
这可以通过json服务实现吗?或者是否有必要创建一些我可以接受表单提交的服务器逻辑?
是否可以从客户端读取一些二进制数据并作为json数据推送到服务器?
【问题讨论】:
标签: json file-upload extjs ria extjs4.1
在 Extjs 中,文件上传不是使用普通的“Ajax”技术执行的,也就是说,它们不是使用 XMLHttpRequests 执行的。而是临时创建一个包含所有字段的隐藏元素,并提交其目标集以引用动态生成的隐藏元素,该元素被插入到文档中,但在收集返回数据后被删除。
请注意,文件上传数据包是使用内容类型 multipart/form 和一些服务器技术发送的
检查:http://docs.sencha.com/ext-js/4-1/#!/api/Ext.form.Basic-method-hasUpload
【讨论】:
是的,这是可能的。您应该使用 FileReader 来获取二进制 base64 编码内容 (FileReader.readAsDataURL(Blob|File)),您可以使用 JSON 进行传输。
更多见解在这里:http://www.html5rocks.com/en/tutorials/file/dndfiles/
【讨论】: