golang
已收录文章:14150篇
-
1.基本恢复测试验证recover能否捕获panic值;2.多层调用测试确保嵌套函数中panic能被外层recover捕获;3.recover调用位置测试确认必须在defer中使用;4.并发环境测试验证goroutine中的独立恢复;5.panic类型测试覆盖不同类型的panic值;6.panic后程序状态测试检查恢复后的变量和资源状态;7.与error的区分强调panic用于不可恢复错误;8.资源清理建议使用defer确保释放;9.recover性能影响较小但频繁panic会影响性能;10.避免过度使用378 收藏
-
使用net/http服务静态文件需配合http.FileServer和http.StripPrefix,开发时可直接用Go服务,生产环境建议交由Nginx或CDN;自Go1.16起可通过embed包将静态文件编译进二进制,实现一键部署;需防范路径遍历风险,避免敏感文件暴露。378 收藏
-
fmt结构体占位符 在Golang中有原生的 fmt 格式化工具去打印结构体,可以通过占位符%v、%+v、%#v去实现,这3种的区别如下所示: type User struct { Name string Age int } func main() { user := User{ Name: "张三"377 收藏
-
不方便,我们需要在main函数中去调用,这样就需要去修改main函数,如果现在项目正在运行,就可能去停止项目 不利于管理,因为当我们测试多个函数或者多个模块时,都需要写在main函数,不利于我们管377 收藏
-
json字符串与各类struct相互转换 不废话了都在代码中了 package main import ( "fmt" "reflect" "encoding/json" "strings" ) type Class struct { Grade int `json:"grade"` //年级 ClassNumber int `json:"classNumber"` //377 收藏
-
简介 当前很多网站直接采用第三方认证登录,例如支付宝/微信/ Github 等。goth封装了接入第三方认证的方法,并且内置实现了很多第三方认证的实现: 图中截取的只是goth支持的一部分,完整列377 收藏