JavaScript 是一个通用的、跨平台、中立于厂商的脚本语言,起源于用户对于浏览器交互体验的旺盛需求。随着互联网的发展和进步,JavaScript 的版本也持续迭代提供了愈来愈丰富的功能,不断提高用户的体验。前端
在 H5 File API 出现以前,前端对于文件的操做是很是有局限性的,每每要依赖 flash 去处理文件操做,大多须要配合后端实现。出于安全角度考虑,从本地上传文件时,代码不可能获取文件在用户本地的地址,因此纯前端不可能完成一些相似图片预览的功能,node
咱们的旧版 JavaScript SDK 即是受当时历史环境所限,只是勉强能堪一用,用户体验不佳的问题一直是咱们研发小哥的遗憾。一直致力于给用户提供简单、可信赖服务的咱们,但愿用户对 SDK 工具的感觉也是易用高效的。天然,随着 H5 File API 技术日趋成熟,通过内部讨论充分验证后咱们便第一时间将 JavaScript SDK 升级迭代。并已于近日发布,更新信息以下:git
适用于 :IE十一、Edge、Chrome、Firefox、Safari 等浏览器,基于七牛云官方 API 构建,其中上传功能基于 H5 File API。开发者基于 JS-SDK 能够方便的从浏览器端上传文件至七牛云,并对上传成功后的图片进行丰富的数据处理操做。github
咱们借鉴了 RxJS 的接口设计模式,新 SDK 的接口很是简单,用户能够直接在 config
和 putExtra
里来进行相应的参数设置,咱们把上传与所接收的参数分开而不是像老版的所有放到一坨,这样子层次也比较清晰。npm
旧版 SDK 在分片上传的时候是同步串行的,其余片必须等前面片上传成功才能接着上传,这其实浪费了时间而且下降了浏览器的资源利用;因而在新版 SDK 中咱们在分片上传优化成并发,而且加入了并发控制,用户能够经过 config.thread
来设置并发请求数量。实现最大并发量只取决于用户所使用的浏览器自身限制。后端
新版 SDK 提供了 md5 校验,用户不用担忧文件在未上传成功状况下被修改而致使最后生成错误文件,用户能够经过 config.checkByMD5
来设置 md5 校验是否开启。设计模式
JS-SDK 兼容支持 H5 File API 的浏览器,在低版本浏览器下,须要额外的插件如 plupload,JS-SDK 提供了一些接口能够结合插件来进行上传工做。咱们在新版 SDK 中把插件的引用剥离了出去,对于须要兼容低版本浏览器的用户,能够本身引用插件,并结合新版 SDK 提供的接口进行开发。promise
SDK 提供了如水印、缩略、旋转等图像处理接口,并在旧版的基础上用 promise 优化了原来的异步请求接口。你们能够访问 Demo 来体验咱们的 demo 。浏览器
e.g. 上传图片并进行图片处理的效果以下:安全
##即刻使用 新版 JavaScript SDK 目前支持多种几种安装方式,用户能够根据本身的开发习惯自由选择:
1.直接使用静态文件地址:
https://unpkg.com/qiniu-js@<version>/dist/qiniu.min.js
复制代码
经过 sctipt 标签引入该文件,会在全局生成名为 qiniu
的对象。
2.使用 NPM 安装
NPM 的全称是 Node Package Manager,是一个 NodeJS 包管理和分发工具,现今已成为非官方发布 Node 模块(包)的标准。如需更详细的关于 NPM 的使用说明,您能够访问 NPM 官方网站,或对应的中文网站。
npm install qiniu-js
复制代码
var qiniu = require("qiniu.js")
// or
import * as qiniu from "qiniu-js"
复制代码
3.经过源码编译
git clone git@github.com:qiniu/js-sdk.git
,进入项目根目录执行 npm install
,执行 npm run build
,便可在 dist 目录生成 qiniu.min.js
。
访问咱们的官方文档站 或是 Fork GitHub 可了解更多信息
关注公众号七牛云,了解更多信息哦~