摘要: 不根据协议使用开源软件可能面临的风险 2003 年 Linksys 公司(同年 3 月被思科收购)推出 WRT-54G,这款路由器采用了基于 Linux 的固件,而 Linux 使用的是 GPL 开源协议,所以思科迫于压力,开放了 WRT-54G 的源码,这使得爱好者们知道了路由器固件的实现方式,进 阅读全文
posted @ 2021-12-20 09:29 AaronLin 阅读(2524) 评论(3) 推荐(10) 编辑
摘要: 学习编程之初就常被告诫:“永远不要相信用户的输入”,但实际编码中,可能因为各种原因而忽略这点,本文尝试以 SQL 注入的角度探寻校验输入的重要性 以下实验均以 SQLI labs 靶场为例 1. 联合注入(Union-Based) 来自:Less-1 这是一个常见的查询页面。http://127.0 阅读全文
posted @ 2025-02-27 08:44 AaronLin 阅读(984) 评论(0) 推荐(6) 编辑
摘要: 安全外壳协议(Secure Shell Protocol,简称SSH)是一种加密的网络传输协议,属于应用层协议。OpenSSH 是最流行的 SSH 实现,它是大量操作系统的默认组件 OpenSSH 套件由以下工具组成: 远程操作使用:ssh, scp 和 sftp 密钥管理:ssh-add, ssh 阅读全文
posted @ 2025-01-24 08:46 AaronLin 阅读(721) 评论(7) 推荐(2) 编辑
摘要: iptables 是一个常看常忘的命令,本文试图从应用的角度理解它 iptables 是运行在用户空间的应用软件,通过控制 Linux 内核 netfilter 模块,来管理网络数据包的处理和转发 一些常用的场景 1. 禁止 ip 访问后端 IP 在 192.168.64.6 上增加规则: # -A 阅读全文
posted @ 2024-12-27 08:31 AaronLin 阅读(401) 评论(4) 推荐(3) 编辑
摘要: TL;DR 手动为 MySQL 指定非偏移量的时区,以避免 TIMESTAMP 类型夏令时问题和时区转化性能瓶颈 TIMESTAMP 范围:'1970-01-01 00:00:01' UTC to '2038-01-19 03:14:07' 连接 MySQL 数据库时,serverTimezone 阅读全文
posted @ 2024-12-19 08:40 AaronLin 阅读(499) 评论(0) 推荐(0) 编辑
摘要: TL;DR Learn in Public 强调将学习到的知识 分享到公共空间,相较于纯输入式的学习有诸多好处。AI 工具极大降低了信息检索、整理、概括的门槛,使得输入信息更容易,但对我们真正掌握知识的帮助仍然有限,所以我们更需践行要像 Learn in Public 这样能提供 有效输出 的学习方 阅读全文
posted @ 2024-05-15 08:56 AaronLin 阅读(339) 评论(2) 推荐(2) 编辑
摘要: 最初对前端的观感:眼花缭乱,各种各样的工具链以及其对应的配置文件、VS Code 插件,各种技术百家争鸣,选择众多。后来才理解前端不同于后端,后端代码的运行环境相对可控,而前端代码运行在用户设备上,所以需要兼容不同的环境,而很大一部分的工具、配置都是解决兼容性的问题 TL;DR 工程化的目的:降低开 阅读全文
posted @ 2024-04-28 08:58 AaronLin 阅读(1388) 评论(6) 推荐(6) 编辑
摘要: 在前端代码中很经常看到使用 setTimeout(fn, 0),如下面代码所示,乍一看很多余,但是移除了可能会出现一些奇奇怪怪的问题。要解释这个就需要理解 事件循环(Event Loop),下面会通过一些例子和动画来辅助理解事件循环 setTimeout(() => { // 调用一些方法 }, 0 阅读全文
posted @ 2024-04-17 07:49 AaronLin 阅读(307) 评论(5) 推荐(2) 编辑
摘要: 先跑起来,通过文档和实践熟悉业务流程 这一步可以通过看官方文档开始,要注意的是一些项目是 更新先于文档 的,比如新版本启动方式有变更,但是文档还没更新。跟着文档不一定能把项目跑起来,需要借助 GitHub Issue 或者是 Slack 这样的工具以获取即时的帮助 看测试,通过测试了解流程 如果是开 阅读全文
posted @ 2024-04-07 08:31 AaronLin 阅读(551) 评论(1) 推荐(5) 编辑
摘要: 最近在合并上游代码,遇到了一个问题:某个 commit 杂糅了几个不同的特性修改,这可能会导致 rebase 上游代码时需要再对该 commit 进行额外的代码冲突处理 解决方法:合并上游分支前,拆分杂糅的 commit,并将其中不同的特性修改合并(Squash)回相关的 commit。可以直接通过 阅读全文
posted @ 2024-03-27 08:50 AaronLin 阅读(595) 评论(0) 推荐(1) 编辑
摘要: 上一节:[SpringBoot 测试实践 - 2:单元测试与集成测试](https://www.cnblogs.com/aaronlinv/p/17645803.html) 编写测试的时候,我们必须保证外部依赖行为一致,也需要模拟一些边界条件,所以我们需要使用 Mock 来模拟对象的行为。Sprin 阅读全文
posted @ 2023-08-24 08:40 AaronLin 阅读(4138) 评论(0) 推荐(1) 编辑
点击右上角即可分享
微信分享提示