<acronym id="eaeyc"></acronym>

專業從事 微信小程序、網站、辦公系統等開發建設!

加入收藏 聯系我們

咨詢熱線

18951053109

技術知識

首頁 > 新聞中心 > 技術知識

Go 結構體標簽表達式 v1.0 發布,成參數校驗殺手锏

發布時間: 2019/1/29 15:47:49 | 次瀏覽


 go-tagexpr 由字節跳動開源,實現了 Golang 結構體標簽表達式解釋器,可用于各種場景的請求參數校驗。

主要特性:

  • 支持各種常用運算符

  • 支持訪問數組、切片、字典的成員

  • 支持訪問當前結構中任意字段

  • 支持訪問嵌套字段、非導出字段等

  • 內置 len、sprintf、regexp 函數

  • 支持單表達式與多表達式兩種定義模式

  • 提供了參數校驗子包

看一個參數校驗的小例子:

package validator_test

import (
	"fmt"

	"github.com/bytedance/go-tagexpr/validator"
)

func Example() {
	var vd = validator.New("vd")

	type InfoRequest struct {
		Name string `vd:"($!='Alice'||(Age)$==18) && regexp('\\w')"`
		Age  int    `vd:"$>0"`
	}
	info := &InfoRequest{Name: "Alice", Age: 18}
	fmt.Println(vd.Validate(info) == nil)
	// Output:
	// true
}

Copyright © 出手信息科技. All rights reserved 蘇ICP備17067766號-1
337p日本欧洲亚洲大胆艺术图