zoukankan      html  css  js  c++  java
  • 大家一起来探讨下在web中显示上传进度的问题

    首先我想说下,如果有人说我抽,也没办法。我只想探讨原理,不要组件。

    确定问题:上传文件时显示进度信息。

    背景分析:还是那句老话,网上有很多进度显示的方案,看了都不是我想要的。不过有很多思路还是挺好的,我想要的是:把比较大的文件分块读取,每读取一块文件向客户端发送一个信号。

    有人说用XMLHttpRequest,确实可行,但是只有5个状态,其中一个状态是处理过程,这个关键的状态还是不透明。如果文件很大,这个过程还是要耗比较长的时间的。这样进度的作用未得到完全体现。

    个人认为的难点:服务器端读取一块数据,发送一个信号;而不是读完再发送信号。但是程序中的事务机制,事件是不可分割的,要么做完,要么不做。

    那么我想突破点在于:重写保存文件的事件。

    还有一个想法,就是在客户端将数据分块到缓存,一块一块的上传。不知道具体实现。

    第三个想法,根据测试网速的原理,先测试出速度,那么一切就好办了。可是在上传过程中不能保证网络的稳定性。

    本人不知道桌面程序是怎么获得进度的,知道的提供个思路呗。所谓分块读取发送信号真的可行吗?WCF,Ajax,iframe,XMLHttpRequest,SwfUPload等关键点在什么地方?……

  • 相关阅读:
    C、C++笔记
    日向blog开发记录
    項目生成順序錯誤導致的鏈接ERROR
    vs单元测试demo
    让CtrlList的某一行自定义颜色
    MFC软件的一点没用的调试经验……
    VS单步调试DLL形式的COM组件的过程
    socket udp编程的一些积累的记录
    git push报错大文件,删除后重新commit依然报错
    CC++串口通信编程的一点技术记录
  • 原文地址:https://www.cnblogs.com/langu/p/2252950.html
Copyright © 2011-2022 走看看