客户端:github.com/focusbe/tin…
nodejs版:github.com/focusbe/tin…
tinypng ,也就是熊猫压缩是很多前端喜欢的压缩工具,官方提供了网站版,需要手动上传和下载图片,并且对于张数有限制,在使用的过程中有些繁琐,当然官方有提供nodejs的api版本,但是也有数量限制,
看到网上有人用nodejs写了一段自动上传并压缩的代码,原文在下面
nodejs 全自动使用 Tinypng (免费版,无需任何配置)压缩图片
[
](segmentfault.com/a/119000001…)
我在原来的基础上做了一些小的修改
-
加入了随机ip绕过20张限制,
-
封装成了nodejs的接口,方便集成到脚手架中和在Electron中使用
修改后的大致思路是这样的。
-
递归获取本地文件夹里的文件
-
过滤文件,格式必须是
.jpg
.png
,大小小于5MB.(文件夹递归) -
每次只处理一个文件(可以绕过20个的数量限制)
-
每一次随机一个IP地址并且同步进行(提升压缩速度,绕过20张数量限制)
-
处理返回数据拿到远程优化图片地址
-
取回图片更新本地图片
贴上nodejsAPI 版的Github地址
[
再有了上面nodejs的版本后,再通过Electron就可以打包成客户端的形式,如果在不集成到脚手架的情况下也可以享受更加便利的压缩图片。
客户端版的Gihub地址