登录
首页 >  Golang >  Go问答

记录如何在服务端点中使用 GoDoc 接受多部分/表单数据

来源:stackoverflow

时间:2024-03-02 17:39:19 493浏览 收藏

哈喽!今天心血来潮给大家带来了《记录如何在服务端点中使用 GoDoc 接受多部分/表单数据》,想必大家应该对Golang都不陌生吧,那么阅读本文就都不会很困难,以下内容主要涉及到,若是你正在学习Golang,千万别错过这篇文章~希望能帮助到你!

问题内容

我有一个用 go/gin 编写的服务,我接受 multipart/form-data 来接受来自用户的文件列表。代码如下所示。

func uploadscreenshotshandler(c *gin.context) {
    //multipart form
    form, err := c.multipartform()
    if err != nil {
        logger.log.error(err.error())
        c.json(http.statusbadrequest, gin.h{"error": err.error()})
        return
    }

    files := form.file
    // more logics with the files
}

我正在使用 godoc 来记录我的端点。那么我如何指定我的 godoc 以便 swagger 知道这是接受 multipart/form-data 的端点?

// UploadFileHandler godoc
// @Summary Upload a list of file 
// @Description An API for clients to upload files
// @Param <WHAT DO I PUT HERE??> <----------
// @Success 200 "Successfully uploaded"
// @Failure 400 {object} interface{} "Bad request: request body has to be form-data"
// @Router / [post]

解决方案


指定端点接受多个文件

// UploadFile godoc
// @Summary Uploads a file
// @Description Takes in a file as part of a multipart form and stores the file
// @Tags Uploads
// @Accept  multipart/form-data
// @Produce  json
// @Param file formData file true "File 1 to upload"
// @Param file1 formData file true "File 2 to upload"
// @Success 200 "Successfully uploaded"
// @Failure 400 {object} interface{} "Bad request: request body has to be form-data"
// @Router / [post]

func UploadHandler(c *gin.Context) {
   ...
}

本篇关于《记录如何在服务端点中使用 GoDoc 接受多部分/表单数据》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于Golang的相关知识,请关注golang学习网公众号!

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