如何使 Protobuf 3 字段成为必填字段?

Protobuf 3 是一种高效的数据序列化格式,但在使用过程中,有时需要将某些字段设为必填字段。那么,如何使 Protobuf 3 字段成为必填字段呢?在本文中,php小编草莓将为您详细介绍如何使用 Protobuf 3 的特性来实现字段必填,并提供相应的代码示例。无论您是初学者还是有一定经验的开发者,本文都能帮助您快速掌握必填字段的使用方法,提升代码的健壮性和可靠性。让我们一起来看看吧!,我正在使用 grpc/proto-buffers 在 golang 中编写我的第一个 api 端点。我对 go 还很陌生。
以下是我为测试用例编写的文件,这是在上面包含的 v1.go 文件中定义 endpointrequest 对象的方式:,上面的测试用例似乎工作正常。,我设置了验证规则,有效地使参数 a 成为强制参数,因为它要求 a 是一个至少包含 1 的字符串。因此,如果省略 a,端点将返回 400。,但现在我想确保如果省略 cb 端点返回 400。我怎样才能做到这一点?在 protobufs 3 中,他们删除了 required 关键字。那么我如何检查是否传入了非字符串参数并做出相应的反应?,简短的版本:你不能。,required 被删除主要是因为它使更改向后不兼容。尝试使用验证选项重新实现它并不是那么激烈(更改更容易),但会遇到如您所见的缺点。,相反,将验证保留在原型定义之外,并将其移至应用程序本身。每当您收到消息时,您都应该检查其内容(当 required 出现时也是如此)。在极少数情况下,由 options 或 required 提供的简单验证就足够了。,
返回顶部
跳到底部

Copyright 2011-2024 南京追名网络科技有限公司 苏ICP备2023031119号-6 乌徒帮 All Rights Reserved Powered by Z-BlogPHP Theme By open开发

请先 登录 再评论,若不是会员请先 注册