go http异常处理
来源:互联网 发布:淘宝物流几天自动收货 编辑:程序博客网 时间:2024/05/22 07:53
原文出处: https://github.com/qianguozheng/ideas/blob/master/golang-http-panic-recover-usage.md
Golang http post panic recover usage
Brief Introduction
In golang, some abnormal case would cause program crash, but if you want it recover, you need to handle it by hand.
Below is the simple example of http function use recover to recover from panic caused by peer-end server crash.
package mainimport ( "errors" "fmt" "net/http" "strings" "time")var err errorfunc httppost() { for { fmt.Println("Cycle...") defer func() { if r := recover(); r != nil { fmt.Println("Recovered in testPanic2Error", r) //check exactly what the panic was and create error. switch x := r.(type) { case string: err = errors.New(x) case error: err = x default: err = errors.New("Unknow panic") } } fmt.Println(err) httppost() }() resp, err := http.Post("http://127.0.0.1/v3/api/device/vpn", "application/x-www-form-urlencoded", strings.NewReader("name=qgz")) if err != nil { fmt.Println(err) } resp.Body.Close() time.Sleep(time.Second * 5) fmt.Println("Cycle...") }}func main() { httppost()}
0 0
- go http异常处理
- Go语言 异常处理
- Go语言异常处理
- go异常处理
- Go CopyFile 异常处理 实现
- Go语言之异常处理
- WCF HTTP异常处理
- Go的异常处理 defer, panic, recover
- Go的异常处理 defer, panic, recover
- Go的异常处理 defer, panic, recover
- Go的异常处理 defer, panic, recover
- Go语言错误与异常处理机制
- Go panic, defer, recover 的异常处理
- Go的异常处理 defer, panic, recover
- Go起步:9、Go的错误处理--自定义异常
- Go指南练习之《HTTP 处理》
- Go-HTTP
- Go的异常处理 defer, panic, recover<转载>
- Python 中 strip函数
- android异常总结--java.lang.ClassCastException: android.widget.LinearLayout$LayoutParams cannot be cast t
- C++学习笔记一(对象和类)
- 几个递归小题
- 和我一起学Hadoop(三):Hadoop集群的最简化部署
- go http异常处理
- C++:构造函数和析构函数能否为虚函数
- RJ45
- Objective-c - @class关键字
- Java Thread(线程)案例详解sleep和wait的区别
- Python比较字符串cmp
- 对小程序的理解以及开发过程中的一些体会
- Linux内核配置、编译及Makefile简述
- 职工信息管理系统(未完成)