go run 9.go500 err:wrap err: Forbidden: permission denied
4、错误值判断在代码中或者mysql库或者io库中我们经常会看到这样的全局错误:
var ErrCourseware = errors.New("courseware")
这种错误我们称之为哨兵错误 。一般数据库没查到ErrNoRows或者io读到了EOF错误,这些特定的错误可以帮助我们做一些特殊的处理 。
一般我们会直接用==号判断错误值,但是就像上面的如果错误被包装哪我们就不好去判断了 。好在errors包中提供了errors.Is方法,通过递归调用Unwrap判断错误链中是否与目标错误相匹配的错误值:
if err != nil {if errors.Is(err, ErrCourseware) {// ...} else {// ...}}
【golang中的错误处理】
经验总结扩展阅读
- 十二星座中的分手大师有哪些
- 12星座因哪些错误定律葬送了爱情
- 2023年是五行金木水火土中的什么命 2023年水兔命好吗
- 世贤品如是什么电视剧中的人物?
- 我的世界怎么制作下界通道地狱门(我的世界中的下界传送门怎么制作)
- 12星座留下哪些前任的痛苦记忆
- 万嘉乐晴天是什么电视剧中的人物?
- 万大成和李元妮是什么电视剧中的人物?
- 全球首台AR电视——创维S9D电视 国货中的精品
- SLAM中的内外点