邮件退订的设计与实现
何为邮件退订在平常的验证码, 推广邮件中, 我们通常会在最下角找到 退订链接。通常访问它, 我们就不会再收到他们发送的邮件。 但是, 如何以最简单, 最节省性能的方式去实现这一功能呢? 一开始其实最简单的方式, 貌似就是在 发送邮件时, 生成一段随机字符, 存储在数据库或缓存中(已经缓存, 可直接读取), 然后拼接成一个网址, 附在邮件底部. 用户打...
何为邮件退订在平常的验证码, 推广邮件中, 我们通常会在最下角找到 退订链接。通常访问它, 我们就不会再收到他们发送的邮件。 但是, 如何以最简单, 最节省性能的方式去实现这一功能呢? 一开始其实最简单的方式, 貌似就是在 发送邮件时, 生成一段随机字符, 存储在数据库或缓存中(已经缓存, 可直接读取), 然后拼接成一个网址, 附在邮件底部. 用户打...
不蒜子 应该算是一款比较好用的前端访问统计工具 一段Js就可以实现统计 站点总 uv pv 及文章的 pv 自建 不蒜子 API因为其官网可能访问量太大, 不时出现502 于是我花了点时间, 用 Golang 实现了其功能, 数据存储采用 Redis. uv 通过用户 ip + UserAgent 判断, pv 通过 referer 判断. 所有信...
最近在捣鼓Flutter的时候, 一直在解决有关fileProvider的问题. 当需要打开安卓设备自带的文件管理器时, 一直报错exposed beyond app through Intent.getData() 在配置 FileProvider相关权限后, 依旧不行, 貌似需要原生调用.这估计就需要flutter与原生相互调用了, 奈何我暂时没有...
其实很明显, 目前我博客的绝大多数图片和静态资源 都是存储在腾讯云的对象存储中的. 目前采用的 私有读写 + 腾讯云cdn的方案. 事情的起因很简单, 本来想分享一下日常的摄影作品, 但考虑到版权因素. 想到腾讯云的对象存储也提供了图片处理(数据万象), 同时也在近期推出了工作流. 于是我便简单的写了一个工作流来实现上传文件后 自动给文件添加水印, 并...
Github ActionGithub Action 是 Github 推出的一项持续集成服务, 我们可以利用 Github Action 来实现多平台测试代码, 多平台打包, 访问远程服务等等. 如 github.com/soxft/serverStatus 我就利用 Github Action 实现了代码Push到仓库main...
模糊查询Mysql实现模糊查询 最简单的是LIKE关键字, 如 1SELECT * FROM `content` WHERE `topic` LIKE '%地球%'; 而当然也可以使用LOCATE(),POSITION()等内置函数来实现. 不过 这种模糊查询都存在一定的局限性. 举个?: 记录为: 你好,我的世界, 此时通过关键...
当使用 1java -jar pepk.jar --keystore test.jks --alias test --output=output.zip --encryptionkey=XXX --include-cert 导出加密证书时, 报错Invalid keystore format, 目前我的解决方案是, 将JAVA_HOME指向And...
WorkerManWorkerman是一款常驻内存的PHP服务框架, 它提供了一个更简单的方案供开发者, 开发TCP, UDP等服务. 且从他衍生出来的 Webman 采用MVC框架, 复用了绝大多数的类库, 如果你有Laravel相关的开发经验, 可以很轻松的尝试Webman. 目前来说 Timeletters (拾光) 的后端 所采用的是 Wo...
CommentToMail 一个Typecho异步邮件推送插件 CommentToMail 作为一款老牌Typecho 邮件推送插件, 具有多个分支. 但大都长时间未更新, 且无法支持 php8 与 Typecho 1.2.0. 重构因为最近更新了Typecho 1.2.0 beta版本 但发现 CommentToMail并未支持, 所以 在此我对...
再见 2021今天是 2022年1月25日, 怎么说呢, 感觉时间真的过的很快. 2020,2021这些时间就好像是在昨天.. 这一年 对我来说并不算好过, 遇到了很多事, 很多困难, 尝试去解决他们, 但有些并不是说解决就能解决的. 很多问题 甚至可能 永远的无法彻底解决吧. 这一年 我也尝试去思考, 存在的意义 到底是什么, 为什么要存在, 存...