SlideShare a Scribd company logo
Easily upload files to 
...and so much more
What is Fine Uploader? 
1. Native JavaScript file upload library 
2. jQuery supported (but optional) 
3. S3, Azure, & custom endpoint support 
4. Fault tolerance: chunking, resume, retry, pause 
5. Images: scaling, previews, paste 
6. UI: DnD, templating, progress, initial lists 
7. Also: CORS, delete, forms, validation 
8. Soon: CloudFront, duplicate file detection, ...
Browser Support
the oldies...
browsers that don't suck
Fine Uploader S3 
Don't worry about the S3 REST API 
Forget about constructing requests & handling errors 
Construct a policy? No need! 
Use S3's bandwidth, not your server's 
Keep your server simple & focused
Internet Explorer IE7 - 9 
MPE POST via form submit 
entire file in one request 
custom headers sent as params 
303 from S3 to a same-origin endpoint 
IE7 requires json2.js (for policy generation)
All other browsers 
Uses S3 "multipart upload API" 
Upload files in chunks via XHR 
Each request must be signed
AWS Setup 
1. Create a bucket 
2. 
Custom domain? 
3. Setup CORS rules 
4. Create IAM user(s)
Server-signed request 
workflow 
Each request sent to S3 must be signed by server 
Secret key lives on the server 
Access key on the client 
Keys should be associated w/ limited IAM user
Dirt Simple Client-Side Code 
var uploader = new qq.s3.FineUploader({ 
element: document.getElementById("uploaderContainer"), 
request: { 
endpoint: "https://mybucket.s3.amazonaws.com", 
accessKey: "{{MY_CLIENTSIDE_IAM_USER_ACCESS_KEY}}" 
}, 
signature: { 
endpoint: "/s3signatures.php" 
}, 
iframeSupport: { 
localBlankPagePath: "/blankpage.html" 
} 
}); 
... of course, you need to handle signature requests server side. 
(just a keyed-HMAC)
"Serverless" Workflow 
Server only necessary for static resources 
Generate short-lived limited creds via server... 
... -or- use AWS WIF 
(all client-side) 
Requests are signed client-side by Fine Uploader 
WIF only possible in "modern" browsers
Dirt Simple Client-Side Code? 
Not really. 
You must integrate with IP(s) & use the AWS JS SDK. 
Not rocket science, but more than a few lines of code.
References 
Fine Uploader S3 demo w/ server-provided signatures 
Fine Uploader S3 server-side request handler examples 
Serverless S3 uploads demo 
Getting started w/ Fine Uploader S3 
Fine Uploader S3 docs page 
Fine Uploader S3 server-side notes 
Fine Uploader S3 options 
Fine Uploader S3 API 
Fine Uploader S3 events

More Related Content

PDF
Playing with php_on_azure
PPTX
Microsoft Azure Websites for PHP Developers
PPTX
Php on azure
PPTX
Identity in ASP.NET Core
PDF
Develop and Run PHP on Windows. Say(Hello); to WordPress on Azure
PPTX
Asp.net identity dot netconf
PPTX
Microsoft asp.net identity security
ODP
Authentication & Authorization in ASPdotNet MVC
Playing with php_on_azure
Microsoft Azure Websites for PHP Developers
Php on azure
Identity in ASP.NET Core
Develop and Run PHP on Windows. Say(Hello); to WordPress on Azure
Asp.net identity dot netconf
Microsoft asp.net identity security
Authentication & Authorization in ASPdotNet MVC

What's hot (20)

PPTX
Starting with Node.js
PDF
Microservices - not just with Java
PPT
Mule compatible technologies
PPTX
What's New in ASP.NET Identity - TRINUG Sept 2014
PDF
MongoDB + Node.JS + EPAM ROAD
PPTX
ASP.NET MVC and ajax
PDF
From server generated pages to client app in a micro-services world
PPTX
Aos canadian tour (YOW) @energizedtech - Manage AzureRM with powershell
PPT
Privilege Escalation
PPTX
Building a production ready meteor app
PPTX
Log in to a Linux VM in Azure using AAD authentication
PPTX
PPT
Easy Web Serivce on iOS with Pico
PDF
Android & Monkey Web Services
PPT
Web services
PPT
Architecture of Professionals.az
PPTX
Chrome extansion
PDF
MongoDB Israel June Meetup
PDF
Flask jwt authentication tutorial
PPTX
Wordpress plugin creation_overview
Starting with Node.js
Microservices - not just with Java
Mule compatible technologies
What's New in ASP.NET Identity - TRINUG Sept 2014
MongoDB + Node.JS + EPAM ROAD
ASP.NET MVC and ajax
From server generated pages to client app in a micro-services world
Aos canadian tour (YOW) @energizedtech - Manage AzureRM with powershell
Privilege Escalation
Building a production ready meteor app
Log in to a Linux VM in Azure using AAD authentication
Easy Web Serivce on iOS with Pico
Android & Monkey Web Services
Web services
Architecture of Professionals.az
Chrome extansion
MongoDB Israel June Meetup
Flask jwt authentication tutorial
Wordpress plugin creation_overview
Ad

Similar to Fine Uploader S3 (20)

PDF
 Active Storage - Modern File Storage? 
PPTX
Introduction to Amazon S3
PDF
Everything I know about S3 pre-signed URLs
PPTX
ABCs of AWS: S3
PDF
S3-Questions.pdf
ZIP
Rails in the Cloud
ZIP
Rails in the Cloud
PDF
Cloud Computing With Amazon Web Services, Part 2: Storage in the Cloud With A...
PDF
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
PDF
Introduction to Amazon Web Services
PDF
Amazon S3 Overview
PPT
SOA – Service Oriented Architecture SOA.
ODP
Amazon WS Overview
PPTX
AWS Storage - S3 Fundamentals
PDF
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
PDF
s3
PPT
PPTX
AWS Storage services
PPTX
Programming Amazon Web Services for Beginners (1)
PDF
AWS simple storage service
 Active Storage - Modern File Storage? 
Introduction to Amazon S3
Everything I know about S3 pre-signed URLs
ABCs of AWS: S3
S3-Questions.pdf
Rails in the Cloud
Rails in the Cloud
Cloud Computing With Amazon Web Services, Part 2: Storage in the Cloud With A...
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Introduction to Amazon Web Services
Amazon S3 Overview
SOA – Service Oriented Architecture SOA.
Amazon WS Overview
AWS Storage - S3 Fundamentals
JavaScript & Cloud: the AWS JS SDK and how to work with cloud resources
s3
AWS Storage services
Programming Amazon Web Services for Beginners (1)
AWS simple storage service
Ad

Recently uploaded (20)

PPTX
Trending Python Topics for Data Visualization in 2025
PDF
DNT Brochure 2025 – ISV Solutions @ D365
PPTX
"Secure File Sharing Solutions on AWS".pptx
PDF
Wondershare Recoverit Full Crack New Version (Latest 2025)
PPTX
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
PPTX
assetexplorer- product-overview - presentation
PDF
Cost to Outsource Software Development in 2025
PPTX
Custom Software Development Services.pptx.pptx
PPTX
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
PDF
DuckDuckGo Private Browser Premium APK for Android Crack Latest 2025
PPTX
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
PPTX
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
PPTX
GSA Content Generator Crack (2025 Latest)
PDF
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
PDF
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
PDF
Topaz Photo AI Crack New Download (Latest 2025)
PPTX
Weekly report ppt - harsh dattuprasad patel.pptx
PPTX
Computer Software and OS of computer science of grade 11.pptx
PPTX
Cybersecurity: Protecting the Digital World
PPTX
Monitoring Stack: Grafana, Loki & Promtail
Trending Python Topics for Data Visualization in 2025
DNT Brochure 2025 – ISV Solutions @ D365
"Secure File Sharing Solutions on AWS".pptx
Wondershare Recoverit Full Crack New Version (Latest 2025)
AMADEUS TRAVEL AGENT SOFTWARE | AMADEUS TICKETING SYSTEM
assetexplorer- product-overview - presentation
Cost to Outsource Software Development in 2025
Custom Software Development Services.pptx.pptx
Embracing Complexity in Serverless! GOTO Serverless Bengaluru
DuckDuckGo Private Browser Premium APK for Android Crack Latest 2025
WiFi Honeypot Detecscfddssdffsedfseztor.pptx
Log360_SIEM_Solutions Overview PPT_Feb 2020.pptx
GSA Content Generator Crack (2025 Latest)
AI/ML Infra Meetup | LLM Agents and Implementation Challenges
Product Update: Alluxio AI 3.7 Now with Sub-Millisecond Latency
Topaz Photo AI Crack New Download (Latest 2025)
Weekly report ppt - harsh dattuprasad patel.pptx
Computer Software and OS of computer science of grade 11.pptx
Cybersecurity: Protecting the Digital World
Monitoring Stack: Grafana, Loki & Promtail

Fine Uploader S3

  • 1. Easily upload files to ...and so much more
  • 2. What is Fine Uploader? 1. Native JavaScript file upload library 2. jQuery supported (but optional) 3. S3, Azure, & custom endpoint support 4. Fault tolerance: chunking, resume, retry, pause 5. Images: scaling, previews, paste 6. UI: DnD, templating, progress, initial lists 7. Also: CORS, delete, forms, validation 8. Soon: CloudFront, duplicate file detection, ...
  • 6. Fine Uploader S3 Don't worry about the S3 REST API Forget about constructing requests & handling errors Construct a policy? No need! Use S3's bandwidth, not your server's Keep your server simple & focused
  • 7. Internet Explorer IE7 - 9 MPE POST via form submit entire file in one request custom headers sent as params 303 from S3 to a same-origin endpoint IE7 requires json2.js (for policy generation)
  • 8. All other browsers Uses S3 "multipart upload API" Upload files in chunks via XHR Each request must be signed
  • 9. AWS Setup 1. Create a bucket 2. Custom domain? 3. Setup CORS rules 4. Create IAM user(s)
  • 10. Server-signed request workflow Each request sent to S3 must be signed by server Secret key lives on the server Access key on the client Keys should be associated w/ limited IAM user
  • 11. Dirt Simple Client-Side Code var uploader = new qq.s3.FineUploader({ element: document.getElementById("uploaderContainer"), request: { endpoint: "https://mybucket.s3.amazonaws.com", accessKey: "{{MY_CLIENTSIDE_IAM_USER_ACCESS_KEY}}" }, signature: { endpoint: "/s3signatures.php" }, iframeSupport: { localBlankPagePath: "/blankpage.html" } }); ... of course, you need to handle signature requests server side. (just a keyed-HMAC)
  • 12. "Serverless" Workflow Server only necessary for static resources Generate short-lived limited creds via server... ... -or- use AWS WIF (all client-side) Requests are signed client-side by Fine Uploader WIF only possible in "modern" browsers
  • 13. Dirt Simple Client-Side Code? Not really. You must integrate with IP(s) & use the AWS JS SDK. Not rocket science, but more than a few lines of code.
  • 14. References Fine Uploader S3 demo w/ server-provided signatures Fine Uploader S3 server-side request handler examples Serverless S3 uploads demo Getting started w/ Fine Uploader S3 Fine Uploader S3 docs page Fine Uploader S3 server-side notes Fine Uploader S3 options Fine Uploader S3 API Fine Uploader S3 events