fonchain-fiee/README.md
2025-02-19 14:24:15 +08:00

1.9 KiB
Raw Blame History

管理系统客户端---帮助文档

新管理系统客户端

模块汇总

本地化测试

修改go.mod文件中replace
github.com/fonchain_enterprise/fonchain-account => ../fonchain-account
cd cmd
go run .

数据校验

使用govalidators生成pd校验文件可以在client或者server做数据校验(filter)

校验文件可在proto时生成建议在client的filter做前置校验,校验文件可通用

1、安装go-proto-validators

2、生成校验文件

protoc --proto_path=. --proto_path=C:/Users/user054/go/src --go_out=./api/account --govalidators_out=./api/account  --go-triple_out=./api/account ./api/account/account.proto

3、校验(filter中)

func (f *FonValidateFilter) Invoke(ctx context.Context, invoker protocol.Invoker, invocation protocol.Invocation) protocol.Result {
	if len(invocation.Arguments()) > 0 {
		if v, ok := invocation.Arguments()[0].(validator); ok {
			if err := v.Validate(); err != nil {
				return &protocol.RPCResult{Err: perrors.Errorf("%v,info:%v,method:%s ", err.Error(),
					invoker, invocation.MethodName())}
			}
		}
	}

	return invoker.Invoke(ctx, invocation)
}

server做校验

部署

测试

docker build . -f ./fonchain-main/DockerfileTest  -t main-server

正式

docker build . -f ./fonchain-main/DockerfileProd -t main-server

protoc --proto_path=. --proto_path=C:/Users/Admin/go/pkg/mod --go_out=./api/recruit --govalidators_out=./api/recruit --go-triple_out=./api/recruit ./api/recruit/recruit.proto