作家
登录

探索前端黑科技——通过png图的rgba值缓存数据

作者: 来源: 2017-07-13 16:20:53 阅读 我要评论

说起前端缓存,大年夜部分人想到的无非是几个惯例的筹划,比如cookie,localStorage,sessionStorage,或者加上indexedDB和webSQL,以及manifest离线缓存。除此之外,到底还有没有其余办法可以进行前端的数据缓存呢?这篇文┞仿将会带你一路来摸索,若何一步一步地经由过程png图的rgba值来缓存数据的黑科技之旅。

道理

那么我们若何把信息写入到静态资本中呢?canvas供给了.getImageData()办法和.createImageData()办法,可以分别用于攫取和设置图片的rgba值。所以我们可以应用这两个API进行信息的读写操作。

接下来看道理图:

当静态资本进入缓存,今后的任何对于该图片的请求都邑先查找本地缓存,也就是说信息其实已经以图片的情势被缓存到本地了。

留意,因为rgba值只能是[0, 255]之间的┞符数,所以本文所评论辩论的办法仅实用于纯数字构成的数据。

静态办事器

我们应用node搭建一个简单的静态办事器:

  1. const fs = require('fs'
  2.  
  3. const http = require('http'
  4.  
  5. const url = require('url'
  6.  
  7. const querystring = require('querystring'
  8.  
  9. const util = require('util'
  10.  
  11.   
  12.  
  13. const server = http.createServer((req, res) => { 
  14.  
  15.   let pathname = url.parse(req.url).pathname 
  16.  
  17.   let realPath = 'assets' + pathname 
  18.  
  19.   console.log(realPath) 
  20.  
  21.   if (realPath !== 'assets/upload') { 
  22.  
  23.      fs.readFile(realPath, "binary"function(err, file) { 
  24.  
  25.       if (err) { 
  26.  
  27.         res.writeHead(500, {'Content-Type''text/plain'}) 
  28.  
  29.         res.end(err) 
  30.  
  31.       } else { 
  32.  
  33.         res.writeHead(200, { 
  34.  
  35.           'Access-Control-Allow-Origin''*'
  36.  
  37.           'Content-Type''image/png'
  38.  
  39.           'ETag'"666666"
  40.  
  41.           'Cache-Control''public, max-age=31536000'
  42.  
  43.           
     1/5    1 2 3 4 5 下一页 尾页

      推荐阅读

      C盘哪些文件可以删除?Windows 7系统C盘瘦身三大方法介绍

    1、打开开端菜单—附件—在敕令提示符上右键,选择以治理员身份运行:C盘哪些文件可以删除?实际上如不雅只是纯真的清理垃圾并不克不及整顿出若干空间,而经由过程Win7体系C盘瘦>>>详细阅读


    本文标题:探索前端黑科技——通过png图的rgba值缓存数据

    地址:http://www.17bianji.com/lsqh/36204.html

关键词: 探索发现

乐购科技部分新闻及文章转载自互联网,供读者交流和学习,若有涉及作者版权等问题请及时与我们联系,以便更正、删除或按规定办理。感谢所有提供资讯的网站,欢迎各类媒体与乐购科技进行文章共享合作。

网友点评
自媒体专栏

评论

热度

精彩导读
栏目ID=71的表不存在(操作类型=0)