首页 > 后端开发 > Golang > 正文

Go Gin:验证 base64

WBOY
发布: 2024-02-13 11:00:09
转载
1087 人浏览过

Go Gin:验证 base64

php小编香蕉今天为大家介绍一款名为Go Gin的验证工具,它的作用是验证base64编码的字符串是否合法。在互联网应用中,base64编码是常用的数据传输方式之一,但有时候我们需要对接收到的base64字符串进行验证,以确保数据的完整性和安全性。Go Gin提供了简单易用的接口,可以帮助开发者快速进行base64验证,提高开发效率和数据安全性。接下来,我们将详细介绍Go Gin的使用方法和相关技巧,希望对大家有所帮助。

问题内容

我正在尝试使用 gin 将 base64 图像发送到用 go 编写的服务器。我创建了一个带有绑定和 json 标签的结构来表示请求正文,如下所示:

type createcompanyrequestbody struct {
    name string `json:"name" binding:"required"`
    size string `json:"size" binding:"required"`
    logo string `json:"logo" binding:"required,base64|base64url|base64rawurl"`
}
登录后复制

当尝试使用 gin 的 shouldbindjson 解码正文时,我收到 logo 字段的错误。不过,我确实使用在线工具(https://onlinepngtools.com/convert-base64-to-png)验证了解码的对象确实在 logo 字段中包含有效的 base64 字符串。

解码json的代码如下:

var body createCompanyRequestBody
if err := ctx.ShouldBindJSON(&body); err != nil {
    ctx.Status(http.StatusBadRequest) // Will always hit this
}
登录后复制

我以前没有用过杜松子酒,所以我确信我有疏忽,但我似乎不明白是什么。如何更改结构以允许按预期提供的 base64 变体?

解决方法

如果您将图像作为数据 URI 而不仅仅是发送裸 base64字符串,那么你应该使用 datauribase64字符串,那么你应该使用 datauri 验证器而不是 base64|base64URL|base64RawURL 验证器而不是 base64|base64URL|base64RawURL

以上是Go Gin:验证 base64的详细内容。更多信息请关注PHP中文网其他相关文章!

来源:stackoverflow.com
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责声明 Sitemap
PHP中文网:公益在线PHP培训,帮助PHP学习者快速成长!