轶哥

妄图改变世界的全栈程序员。

NuxtJS中Axios的配置说明

nuxt.js中使用axios,推荐使用nuxt定制款nuxt/axios(https://axios.nuxtjs.org/)。相比原生axios有如下优势:

  • 自动为客户端和服务器端设置baseURL
  • setToken函数暴露给$axios,可以非常容易的进行全局Authentication tokens设置
  • 基于baseURL发起请求时,自动启用withCredentials
  • 添加用于服务器端渲染的Proxy请求Header
  • 支持使用axios加载CSS
  • Nuxt进度条集成
  • Proxi模块集成
  • 使用axios-retry自动重试请求
适用于嵌入式设备的高性能PDF在线预览方案

desktop.jpeg

对于内存较小的嵌入式设备或者移动设备(例如带屏智能音响,安卓、IOS平台的设备),在线预览PDF功能经常会导致内存溢出、应用程序闪退。

对于非常大的PDF文档,一次性下载整个文档将消耗大量的时间,即使开启分段下载,PDF文档正常下载完成并加载,超大的内存占用也会导致设备运行卡顿。

CryptoJS PBKDF2 AES对称加密

CryptoJS提供了和OpenSSL加密命令一致的AES对称加密方法,此方法基于EvpKDFSecret Passphrase 进行计算(This key derivation function is meant to conform with EVP_BytesToKey.),确保进行AES加密计算的key符合长度标准并提升AES加密的安全性。CryptoJS没有直接提供基于PBKDF2的AES加密方法,但在OpenSSL中提供了-pbkdf2参数并将该参数作为AES加密的推荐选项。

Vue3.0 + Vite 绝佳的开发体验

Vite是一个尤大开发的革命性的Web构建工具。

Vite是基于浏览器原生ES Module imports的构建工具。很多场景下,Vite可以代替webpack,开发调试的速度有了非常大的提升。Vite支持对单个文件的热更新,调试一行代码等很久的情况或将成为历史。

vite是法语中“ fast”的意思,其发音是/vit/

JavaScript 安全计算

C/C++、Java、JavaScript等语言,都有计算不精准的问题。原因是这些语言在计算的时候遵循IEEE 二进制浮点数算术标准(IEEE 754),跟CPU浮点运算器有关系。

解决XML报错:Input is not proper UTF-8, indicate encoding

如果使用Chrome浏览器访问XML地址,返回报错信息:

Input is not proper UTF-8, indicate encoding !
Bytes: 0x08 0xE6 0xBA 0x90

这是由于返回回来的数据存在ASCII控制字符。XML规范不支持这部分控制字符。

这个报错提示是Chrome浏览器生成的报错,不是服务器端返回的报错。

关于该报错的详细信息请参阅:《PRB: Error Message When an XML Document Contains Low-Order ASCII Characters》。

  上一页下一页