轶哥

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

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》。

K个一组翻转链表

LeetCode 25. K 个一组翻转链表 https://leetcode-cn.com/problems/reverse-nodes-in-k-group/
LintCode 450. K组翻转链表 https://www.lintcode.com/problem/reverse-nodes-in-k-group/

这是一道用常规思路就能解的算法题。目标清晰、题目易懂,不涉及复杂的算法。

按照题目要求,遍历链表,遍历的同时每经过k个节点就进行一次翻转。需要注意的是,第一次翻转后,记录下整个链表的head作为返回值。从第二次翻转开始,需要将之前翻转过的最后一个结点与新翻转后的第一个结点相连。

Office(Word Excel PPT)转PDF-开放API

大约5年前,我在做一个云打印的软硬件一体化项目,其中很关键的一步是通过API将客户发来的Office文档转换为PDF文档进行预览,然后再发送到对应的打印机进行打印,以PDF预览的方式来确保所见即所得。因此当时开发了此API,一直使用至今,历经数次迭代,如今已经很稳定。

现今免费将此API开放给大家进行使用(因服务器成本较高,不排除将来进行收费的可能。如若将进行收费,我会提前至少两个月联系您。即使收费,我承诺此API仅收取成本费用)。API部署在多地服务器,使用阿里云API网关进行中转。

  上一页下一页