登录
首页 >  Golang >  Go问答

自动文本分析功能

来源:stackoverflow

时间:2024-03-11 19:03:26 398浏览 收藏

从现在开始,努力学习吧!本文《自动文本分析功能》主要讲解了等等相关知识点,我会在golang学习网中持续更新相关的系列文章,欢迎大家关注并积极留言建议。下面就先一起来看一下本篇正文内容吧,希望能帮到你!

问题内容

有没有办法自动解析请求正文,而不是在每个处理程序中执行此 if

我正在使用 go-fibre 框架

if err := c.BodyParser(&post); err != nil {
    // do something
}

我听说有些人不推荐这个,但我很好奇为什么!


正确答案


如果您想创建中间件,请使用如下方法:

const postkey = "post"

func createbodyparsingmiddleware(handler func(*fiber.ctx) error) func(c *fiber.ctx) error {
    return func(c *fiber.ctx) error {
        var post post //type post is declared elsewhere
        if err := c.bodyparser(&post); err != nil {
            return fiber.newerror(fiber.statusbadrequest, "invalid body")
        }
        c.locals(postkey, post)
        err := handler(c)
        return err
    }
}

将中间件与类似的东西一起使用

router.Get("/", CreateBodyParsingMiddleware(myRequestHandler))

您现在可以在 myrequesthandler 中使用 c.locals(postkey) 访问该帖子。

到这里,我们也就讲完了《自动文本分析功能》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于的知识点!

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