File API: Client-Side File Handling and Uploading to the Server
summary
A library replaces a Flash-only uploader with an HTML5 uploader that falls back to Flash when needed, providing APIs like GetFiles, AddInfoReader and a FileImage class for crop/scale/rotate/preview/toBlob. It uses FileReader to extract EXIF/ID3, creates previews via Data URLs or object URLs, performs client-side resizing to produce multiple transformed copies, and uploads files sequentially with progress via FormData or iframe transport for older browsers. Metrics showed Flash-only uploads failed ~10% (down to ~5% when co-hosted) and about 30% of users lacked required HTML5 features, supporting the hybrid approach.
AI-written summary · about
chapters (22)
- 0:00Introduction
- 2:10Flash uploader problems
- 6:05HTML5 vs Flash
- 9:56File filtering metadata
- 12:01Image preview
- 15:17Image resizing
- 16:19Upload methods
- 20:34Parallel uploads validation
- 22:39Drag-and-drop demo
- 23:22Library updates plans
- 24:03Q&A: Browser support
- 26:13Q&A: Server validation
- 27:17Q&A: IE6 resizing
- 28:00Q&A: Flash stability
- 28:49Q&A: Testing parts
- 29:12Q&A: CDN performance
- 29:32Q&A: Client validation
- 30:16Q&A: Large file compression
- 32:02Q&A: Server handling
- 32:25Q&A: Compression features
- 32:45Q&A: Library extensions
- 33:05Q&A
related talks
13mAn introduction to the File API
57mThe Naked Truth About Files
24mImage uploads for mobile web
45mBytes and blobs
43mperformance.now().reject(reasons) | Ilya Grigorik
30mMultimedia file management in web applications
01h 01mThe 2021 edition of dealing with files on the Web
36mTaking an Image Editor Offline
