首頁  >  文章  >  後端開發  >  Go Gin:驗證 base64

Go Gin:驗證 base64

WBOY
WBOY轉載
2024-02-13 11:00:091087瀏覽

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字串,那麼你應該使用datauri 驗證器而不是base64|base64URL|base64RawURL

以上是Go Gin:驗證 base64的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:stackoverflow.com。如有侵權,請聯絡admin@php.cn刪除