Skip to content
dr.dimitru edited this page May 25, 2016 · 36 revisions

Meteor-Files

About:

  • Event-driven API
  • Upload / Read files in Cordova app: Cordva support (Any with support of FileReader)
  • Upload via HTTP or DDP
  • File upload:
    • Ready for small and large files (RAM used only for chunk reading - read about chunkSize)
    • Pause / Resume upload
    • Auto-pause when connection to server is interrupted
    • Multi-stream async upload (faster than ever)
  • Use third-party storage:
    • AWS
    • DropBox
    • Google Drive
    • Google Storage
    • any other with JS/REST API
  • Display upload speed
  • Display remaining upload time
  • Serving files
    • Make files public, so your proxy server like nginx can serve them
    • Protect/Restrict access to files
    • Files CRC check (integrity check)
  • Write to file system (FS)
    • Automatically writes files on FS and special Collection
    • path, collection name, schema, chunk size and naming function is under your control
    • Support for file subversions, like thumbnails, audio/video file formats, revisions, and etc.
  • Streaming via HTTP
    • Correct mime-type and Content-Range headers
    • Correct 206 and 416 responses
    • Following RFC 2616
  • Download via HTTP
    • You able to specify route
    • Download is ready for small and large files, with support of progressive (chunked) download
  • Store wherever you like
    • You may use Meteor-Files as temporary storage
    • After file is uploaded and stored on FS you able to mv or cp its content
  • Support of non-latin (non-Roman) file names
  • Subscribe on files (collections) you need

ToC:

API:
  • FilesCollection Constructor [Isomorphic] - Initialize FilesCollection
  • write() [Server] - Write Buffer to FS and FilesCollection
  • load() [Server] - Write file to FS and FilesCollection from remote URL
  • addFile() [Server] - Add local file to FilesCollection from FS
  • findOne() [Isomorphic] - Find one file in FilesCollection
  • find() [Isomorphic] - Create cursor for FilesCollection
  • insert() [Client] - Upload file to server
  • remove() [Isomorphic] - Remove files from FilesCollection and unlink from FS
  • unlink() [Server] - Unlink file from FS
  • link() [Isomorphic] - Generate downloadable link
  • collection [Isomorphic] - Meteor.Collection instance
  • Template helper fileURL [Client] - Generate downloadable link in template
Examples:
Clone this wiki locally