我计划使用dropzone上传多个附件。
让我解释一下情景和流程,
最初,客户端C将文件直接上传到服务器A,A将上传的文件详细信息的JSON响应给C.
现在有一个潜在的服务器B具有更高的带宽。
所以现在客户端C将文件直接上传到服务器B.
对于每个上传到服务器B的文件,它保存文件并在内部与服务器A通信元信息。服务器A保存元,然后返回密钥D作为对服务器B的响应,服务器B又将该响应发送给客户端C.
然后,客户端C利用该密钥D向服务器A发送请求,服务器A使用该密钥D关联上载的文件项。
我完成了服务器端逻辑和代码。关于客户端,我计划使用dropzone和一些查询,
我知道我可以覆盖dropzone中事件的默认功能。但我想要的是,想象像dropzone上的包装器或扩展(继承)dropzone。我的包装器将做的是它将使用dropzone的强大功能,但文件将如何上传,文件将被上传的位置( URI),进度计算,进度上传取消处理应修复且严格。从某种意义上说,刚性开发人员必须使用我的包装器进行上传,他们不应该使用我的包装器上传他们想要的地方或者改变文件的上传方式。如何实现这一任务。如果可能,为此结构提供伪代码。
每个文件将通过xmlHTTPrequest异步上传到服务器B. 每个文件在添加和接受后开始上传。我遇到了添加文件并接受事件。因此,在完成接受事件后,我将上传该文件,并且应该在预览容器中显示其各自的进度。 如何在该包装器中实现此目的。
我想要在文件被添加和接受后上传。我遇到了addfile并接受了一旦添加文件就会触发的事件以及接受它的检查。并且在代码库中有一个带有noop的附加文件事件。如果这被触发,我可以遍历添加的文件循环并传递接受检查并调用其上传。 所以如何触发此addfiles事件并使其听取。
每个文件都会单独取消正在进行的文件上传。到目前为止,我所拥有的一个想法是为预览容器中的每个文件维护一个唯一的密钥,并拥有该密钥的映射以及与之关联的xmlHTTPrequest对象,如果单击取消上载按钮则将其中止。 此方案是否有更好的方法。
我将提供一个回调函数,一旦上传完成,成功响应即密钥D将被发送到回调函数。
一旦所有文件单独成功上传,客户端将点击一个像attach这样的按钮,它会触发对服务器A的请求。
我是客户世界的新手,我是否可以使用伪代码来显示这些场景。