Go语言技术文章
-
Go cmp.Or 会把空字符串、数字 0 和 false 都视为零值并继续回退。本文说明它的判断边界,并用 Value 与 Valid 分离的写法保留显式零值。452 收藏 -
unicode.IsLetter 判断的是单个 rune 是否属于 Unicode Letter 类别,不等于判断用户看到的完整字符。中文通常返回 true,组合音标常属于 Mark,需要与 IsMark 和 UTF-8 遍历配合。452 收藏 -
Go 用临时文件替换配置或缓存文件时,新文件默认权限可能与旧文件不同。本文演示如何读取旧文件的权限位、应用到临时文件,并处理 umask、平台和异常清理边界。452 收藏 -
使用sql.NullTime接收database/sql查询中的NULL时间,利用Time与Valid区分缺失、零时间和具体时间,并说明展示与回写边界。452 收藏 -
动漫岛产品站展示追番、今日新更和APP下载入口。本文按页面可见信息,说明下载前如何核对Android版本、联系入口与备案信息,并区分产品介绍和实际使用边界。452 收藏 -
解释 net.Resolver.PreferGo 与系统原生解析器的选择边界,梳理 GODEBUG、构建标签和系统配置的影响,并给出自定义 DNS 与双路径诊断写法。452 收藏 -
动漫岛产品站将自己描述为看番、读漫画的小天地,并在首页使用“全站免费无广”等宣传语。本文按页面可见事实说明这些话术能证明什么、不能证明什么,以及 APP 功能提示的核对边界。452 收藏 -
Go crypto/tls 的 InsecureSkipVerify 会同时跳过证书链和主机名校验。本文说明它的中间人风险,并给出 RootCAs 与 VerifyConnection 的安全替代方案。452 收藏 -
Go 的 exec.Cmd 可以通过 ExtraFiles 把父进程已经打开的管道或套接字传给子进程。关键规则是 ExtraFiles[i] 在子进程中从文件描述符 3+i 开始,而不是沿用父进程原来的编号。452 收藏 -
本文说明如何用 mount --bind 建立目录映射,再用 remount,bind,ro 只限制目标入口,并结合 findmnt、挂载命名空间与 systemd 固化服务级只读视图。452 收藏 -
Go 向已关闭通道发送会 panic,增大缓冲、状态探测和 sync.Once 都不能保证安全。本文给出多发送者由协调者等待后关闭的完整示例,并区分取消通知、数据结束与完成信号。452 收藏 -
PHP OPcache 预加载不是普通缓存开关,而是服务启动阶段把函数和类放入持久内存。本文从影响面、启动时间线、加载方式和重启边界说明怎样判断它是否适合你的常驻 PHP 进程。452 收藏 -
Go html/template 使用自定义函数时,FuncMap 必须在 Parse 或 ParseFiles 前注册,否则模板会在解析阶段报 function 未定义。本文用一个邮件通知模板的小实验,拆开注册顺序、模板错误定位、运行时参数校验和安全边界。451 收藏 -
Golang · Go问答 | 2个月前 | 中间件 · go · 认证 · 安全 · net/http · net/http 认证中间件 Go问答 BasicAuth WWW-Authenticate
Go 的 BasicAuth 适合内部管理端、健康检查或临时保护,但 Request.BasicAuth 只负责解析,不替你决定空密码、认证失败状态码和日志内容。本文从一个标准库中间件出发,补齐 401、WWW-Authenticate、凭据校验、权限边界和测试核对。451 收藏 -
Todoist主页点击登录后可能进入 app.todoist.com/auth/login。本文核对官方主页、帮助中心和登录跳转,说明如何判断域名、查找下载入口并保护账号。451 收藏