Go语言没有提供像Java、C#语言中的try...catch异常处理方式,而是通过函数返回值逐层往上抛。golang如何写http请求_后端开发
golang写http请求的方法:使用http.Newrequest方法,先生成http.client,再生成http.request,之后提交请求:client.Do(request)。
Go标准包提供的错误处理功能:
error是个interface:
type error interface { Error() string }
如何创建error:
// example 1 func Sqrt(f float64) (float64, error) { if f < 0 { return 0, errors.New("math: square root of negative number") } // implementation } // example 2 if f < 0 { return 0, fmt.Errorf("math: square root of negative number %g", f) }
如何自定义error:
// errorString is a trivial implementation of error. type errorString struct { s string } func (e *errorString) Error() string { return e.s }
go语言中一般有三种错误处理策略:
关于php中匿名函数与回调函数的详解_后端开发
匿名函数是指没有名称的函数,可以将函数赋值给变量后调用使用;回调函数是指作为一个参数值供另外一个函数使用的函数。
1、返回和检查错误值:通过特定值表示成功和不同的错误,上层代码检查错误的值,来判断被调用func的执行状态
2、自定义错误类型:通过自定义的错误类型来表示特定的错误,上层代码通过类型断言判断错误的类型
3、隐藏内部细节的错误处理:假设上层代码不知道被调用函数返回的错误任何细节,直接再向上返回错误
error interface 的 Error 方法的输出,是给人看的,不是给机器看的。
我们通常会把Error方法返回的字符串打印到日志中,或者显示在控制台上。
永远不要通过判断Error方法返回的字符串是否包含特定字符串,来决定错误处理的方式。
更多golang知识请关注golang教程栏目。
以上就是golang错误抛出的方法的详细内容,更多请关注ki4网其它相关文章!
golang如何清空map_后端开发
Go语言中并没有为map提供任何清空所有元素的函数、方法,清空map的唯一办法就是重新make一个新的map。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)