“错误”:“ json:不受支持的类型:func(* http.Request)users.Tokens”

I'm new with golang and i try use golang for build rest api with mvc structure, but i get error when the api using parameter if not use parameter the code work like /users url no use http request parameter but for /login url with http request using parameter give me internal server error result.

//this is my main.go

 //this route not error
 e.GET("/users", users.GetUsers)

 //this route error
 e.POST("/login", users.AuthUser)


//this is my controller
func GetUsers(c echo.Context) error {
    result := users.GetUsers()
    return c.JSON(http.StatusOK,result)
}
func AuthUser(c echo.Context) error {
    result := users.AuthUser
    return c.JSON(http.StatusOK,result)
}

//this is my models for the error code
func AuthUser(r *http.Request) Tokens {
    var username, password string

    db := dbx.Connect()
    defer db.Close()


    username = r.FormValue("username")
    password = r.FormValue("password")

    rowsuser, err := db.Query("Select id,username,password from account where username = ?",username)
    if err != nil {
        log.Print(err)
    }
    result := Tokens{}

    for rowsuser.Next() {


        var Id, Username, Password string

        err = rowsuser.Scan(&Id, &Username, &Password)
        if err != nil {
            result.Tokens = "ERR001"
        }

        match := CheckPasswordHash(password, Password)
        if match != false{
            sign := jwt.New(jwt.GetSigningMethod("HS256"))
            token, err := sign.SignedString([]byte("secret"))
            if err != nil {
                result.Tokens = "ERR002"
            }
            result.Tokens = token

        }else{
            result.Tokens = "ERR003"
        }


    }


    defer db.Close()

    return result;
}

for the route

e.POST("/login", users.AuthUser)

give this error

"error":"json: unsupported type: func(*http.Request) users.Tokens"