Protocol message EditOrderReq has no “your_definition“ field
程序员文章站
2022-05-30 12:17:14
...
问题描述:
服务器终端最后关键两行的报错如下:
ERROR req = order_pb2.EditOrderReq(**self.params)
ValueError: Protocol message EditOrderReq has no "order_channel" field
它的意思是web层在调用微服务层的时候,经过中间的grpc,proto定义的EditOrderReq请求中没有定义order_field这个字段,但是呢,请求的数据self.params中有order_field这个字段,所以系统才报错的。
解决途径:
问题都知道了,解决就很简单了,在proto中的EditOrderReq中定义order_field字段,或者在请求中删除order_field字段,这个根据你实际编码的需求而定。
后续辅助步骤:
在改完proto后需要对它重新编译,因为它是独立于web和微服务的,在终端进入到存放你grpc文件的位置,找到有make.sh文件的文件夹,然后执行指令
sh make.sh
make.sh是集很多指令的一个编译文件,重新编译后就好啦
希望能对你有所帮助,如有疑问,欢迎评论,希望能与你一起讨论,当然也期待点个赞以示鼓励啦
推荐阅读
-
Protocol message EditOrderReq has no “your_definition“ field
-
python每日一错——Protocol message RewriterConfig has no "layout_optimizer" field
-
caffe跑densenet的错误:Message type "caffe.PoolingParameter" has no field named "ceil_mode".
-
object detection错误Message type "object_detection.protos.SsdFeatureExtractor" has no field named "bat
-
tensorflow中TFRecord数据协议缓存区报错:ValueError:Protocol message Feature has no "features" field
-
调试错误:ValueError: Protocol message Feature has no "feature" field.