离线下载Chrome扩展
今天算是写了第一个Chrome扩展了。早上在点点网上看到东京幻想的一组图,非常喜欢,习惯性地用谷歌类图搜索找大图。但是有个网站被Q了,死活打不开,这样的话就少了两张图,对于我这个强迫症来说是不能忍受的,于是开始酝酿写一个离线下载的玩意,更确切地说是一个代理下载。
在以前的VOA 聚合器项目中使用过一个HTTP 下载类,正好顺手就拿来用。这个类不知道是谁写的,其中有一个 SaveBinFile()
方法没有定义,我也不知道该如何修补,索性直接用 SaveToBin()
方法代替好了,加入一个判断目标文件是否是文本的逻辑,如果是文本的话给特殊扩展名(不是 htm
或 html
的)加上 html
后缀。
这样折腾完之后呢,两张图片的地址作为 GET
方法的参数 url
传入进去,返回 json
字符串提示服务器端下载成功了,然后我访问 json
中提示的地址,两张图片轻松到手。
不过这样怎么配叫做不折腾会死星人呢。这种下载方式每次都这么折腾,何不来个舒服点的,做成一个Chrome 扩展,遇到无法访问的资源,直接右击链接就能下载,这样岂不快哉。随后参考了N 多资料(我比较笨),主要是官方的文档,终于做好了。顺便说一下,Chrome扩展程序开发人员文档(非官方中文版)这个站点翻译得不错。
现在的效果就是,右击链接,选择 CrossGet this!
,扩展会在后台发送 Ajax
请求,文件下载完成之后,会自动新建一个标签页打开,可以浏览或是下载啦。如果下载失败的话,有桌面通知提示。
最后记一下用到的一些代码神马的。
|
|
因为这个用到了我的 kilu.de
免费空间,所以只是个人使用。