微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Go:处理程序因错误而崩溃反映:使用太少的输入参数调用

如何解决Go:处理程序因错误而崩溃反映:使用太少的输入参数调用

背景是我想用一个控制器实现一个集合,有并、交、减三个功能
语言是go,框架是beego

在 controller.go 中,我编写了一个函数来接收来自 POST 的两个字符串:

func (c * SetController) Post(){
    Slice1 := c.GetString("Slice1)  
    Slice2 := c.GetString("Slice2)
}

然后我写了一个函数来得到联合集的答案:

func (c *SetController) Union(Slice1 string,Slice2 string) {
    var temp1 []string = strings.Split(Slice1,",")
    var temp2 []string = strings.Split(Slice2,")
    myslice1 := make([]int,0)
    for x,_ := range temp1 {
        myslice1 = append(myslice1,x)
    }
    myslice2 := make([]int,_ := range temp2 {
        myslice2 = append(myslice2,x)
    }
    UnionAnswer := union(myslice1,myslice2)
    c.Data["UnionAnswer"] = UnionAnswer
    c.TplName = "index.tpl"
}

但是在我上传数据之后:

curl -X POST "http://localhost:8080/?Slice1=1,3,5,6&Slice2=2,4,6"

并得到工会的答复:

curl -X GET "http://localhost:8080/getUnion"

它返回一个错误

2021/07/26 17:39:09.722 [C] [config.go:191] 处理程序崩溃,错误反映:输入参数太少调用

2021/07/26 17:39:09.722 [C] [config.go:197] /usr/local/go/src/runtime/panic.go:965

2021/07/26 17:39:09.722 [C] [config.go:197] /usr/local/go/src/reflect/value.go:393

2021/07/26 17:39:09.722 [C] [config.go:197] /usr/local/go/src/reflect/value.go:337

2021/07/26 17:39:09.722 [C] [config.go:197] /Users/10020662/go/pkg/mod/github.com/beego/beego/v2@v2.0.1/server/ web/router.go:883

2021/07/26 17:39:09.723 [C] [config.go:197] /Users/10020662/go/pkg/mod/github.com/beego/beego/v2@v2.0.1/server/ web/filter.go:81

2021/07/26 17:39:09.723 [C] [config.go:197] /Users/10020662/go/pkg/mod/github.com/beego/beego/v2@v2.0.1/server/ web/router.go:664

2021/07/26 17:39:09.723 [C] [config.go:197] /usr/local/go/src/net/http/server.go:2887

2021/07/26 17:39:09.723 [C] [config.go:197] /usr/local/go/src/net/http/server.go:1952

2021/07/26 17:39:09.723 [C] [config.go:197] /usr/local/go/src/runtime/asm_amd64.s:1371

我想知道为什么以及如何调试。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。