登录
首页 >  Golang >  Go问答

我们如何使用 go Fiber golang 框架登录到 stdout ?

来源:stackoverflow

时间:2024-04-02 12:18:32 422浏览 收藏

对于一个Golang开发者来说,牢固扎实的基础是十分重要的,golang学习网就来带大家一点点的掌握基础知识点。今天本篇文章带大家了解《我们如何使用 go Fiber golang 框架登录到 stdout ?》,主要介绍了,希望对大家的知识积累有所帮助,快点收藏起来吧,否则需要时就找不到了!

问题内容

我正在寻找一种使用 go fiber golang 框架将一些数据记录到 stdout 的方法,因为该框架非常安静,并且大多数情况下不记录错误

我想我可以只使用 fmf.print 但即使这样也根本不会被拾取

你们如何解决 go fiber 框架的问题?当框架很少吐出任何内容时,我如何检测代码中的问题。

这是我正在尝试做的事情但是标准输出中仍然没有任何内容

func GetUserEmail(c *fiber.Ctx) (string, error) {
    cookie := c.Cookies("access_token")

    token, err := jwt.ParseWithClaims(cookie, &ClaimsWithScope{}, func(token *jwt.Token) (interface{}, error) {
        return []byte(SecretKey), nil
    })

    if err != nil {
        return "issues found", err
    }


    payload := token.Claims.(*ClaimsWithScope)

    email := payload.Subject
    fmt.Print("email is", email, "\n")
    return email, nil
}

从上面我有这一行 fmt.print("email is", email, "\n")email 的值打印到标准输出,这样我就可以排除故障但根本没有打印任何东西

需要使 go fiber 变得详细以解决问题


正确答案


fmt.println("email is", email, "\n")

确实有效,问题是代码没有达到这一点;最后将其移到代码中的更高位置,现在可以在 stdout 中看到打印内容

要使用声明或自定义声明解析 jwt,您应该检查状态。

// pass your custom claims to the parser function and data type of cookie parameter should be string
    token, err := jwt.ParseWithClaims(cookie, &ClaimsWithScope{}, func(token *jwt.Token) (interface{}, error) {
        if _, ok := token.Method.(*jwt.SigningMethodHMAC); !ok {
            return nil, errors.New("unexpected signing method")
        }
        return []byte(/* your JWT secret*/), nil
    })

    // type-assert `Claims` into a variable of the appropriate type
    payload := token.Claims.(*ClaimsWithScope)

如果您没有看到 fmt.print() 的任何输出,那么您必须使用 fmt.println()

Print :- “打印”这不能格式化任何内容,它只是接受一个字符串并打印它

Println :- “打印行”与 printf() 相同,但它会附加换行符 \n

今天关于《我们如何使用 go Fiber golang 框架登录到 stdout ?》的内容介绍就到此结束,如果有什么疑问或者建议,可以在golang学习网公众号下多多回复交流;文中若有不正之处,也希望回复留言以告知!

声明:本文转载于:stackoverflow 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>