这个问题是因为:=只能在函数内部使用,如果声明全局变量需要使用var关键字 例如
:=
var
func foo() { id := 1 }
如果声明为全局变量则需要这样声明
var id = 1
PS:Go中引入:=是为了减少一些临时变量的定义,所以一个好的习惯是:=只用来声明临时变量,对于一个函数中常用的变量还是使用var进行声明。
附: Short_variable_declarations