Go语言中文网 为您找到相关结果 12

Execute模板后setCookie失效?

刚开始学GO,遇到这样的情况: t, err := template.ParseFiles("/template/login.tpl") err = t.Execute(w, nil) //如果先执行 http.SetCookie(。。。)//失败,浏览器无法收到cookie 如果调换顺序,先setCookie,再Execute,便可成功设置cookie。 计划是在登陆页面login.tpl,ParseForm( )获取用户名和密码,验证合格以后才发放sessionID,如果反着写,虽然也能办到,但ParseForm( )和验证环节跑到了模板Execute前面: r.ParseForm( ) ...阅读全文

本人刚接触go语言,有个地方不理解,找不到资料,特此请教

![QQ图片20160826154013.png](http://studygolang.qiniudn.com/160826/366aef9e990711269dd8c595dd99e2bb.png) 这是我在本站无意间看到的代码,有两个地方不理解。 第一: 结构体成员后例如“ `` `\w+` ``、`` `[a-zA-Z0-9._%+-]+` ``、`` `@` ``”这些都是什么意思,能否解释下? 第二: 结构体里包含 “ _ struct{} `` `^` `` ” 是什么意思?这个struct是什么? 还请大神不吝赐教。感...阅读全文

beego设置layout不起作用

在router的init方法中设置lay等字段,为什么不起作用呢?? ```golang func init() { mainController := &controllers.MainController{} mainController.Layout = "layout_blog.tpl" mainController.LayoutSections = map[string]string{ "HtmlHead": "html_head.tpl", "Scripts": "scripts.tpl", "Sidebar": "", } fmt.Println(mainController.LayoutSections) beego.Rout...阅读全文

golang zerodivide的问题

对Go异常处理有一些疑惑,比如我有一个divide的方法: ```go func divide(a int, b int) float32 { defer func() { if err := recover(); err != nil { //此处recover了,所以可以继续往执行 fmt.Println(err) } }() return float32(a / b) } func main() { var a int = 10 var b int = 0 fmt.Println(divide(a, b)) //打印出0 } ``` 异常可以处理掉,但是返回的0就非常疑惑了,因为调用方不知道是发生了异常,还是结果是0。 比如: ...阅读全文

关于*osFile.Read() 读取的问题

我有一个文件a.txt 里面的内容为 1,2,3,4,5,6,7 (每个数字单独一行) 然后读取文件的内容 ```go func main() { readFile, err := os.Open("a.txt") buf := make([]byte, 10) for { n, _ := readFile.Read(buf) fmt.Println(string(buf), "读取子节:", n) if n == 0 { break } } } ``` 运行结果为: 1 2 3 4 5 读取子节: 10 6 7 3 // 问题在这 4 5 读取子节: 4 6...阅读全文