- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
所以我有一个来自不同服务的 gRPC 消息(用另一种编程语言编写)。
这是这个对象的一个迷你版本(显然真正的一个是由 protobuf 生成的)
public class Message
{
public string Topic { get; set; }
public string Identifier { get; set; }
public Google.Protobuf.ByteString Msg { get; set; }
}
Protocol message contained a tag with an invalid wire type.
at Google.Protobuf.UnknownFieldSet.MergeFieldFrom(CodedInputStream input) at Google.Protobuf.UnknownFieldSet.MergeGroupFrom(CodedInputStream input) at Google.Protobuf.CodedInputStream.ReadGroup(Int32 fieldNumber, UnknownFieldSet set) at Google.Protobuf.UnknownFieldSet.MergeFieldFrom(CodedInputStream input) at Google.Protobuf.UnknownFieldSet.MergeFieldFrom(UnknownFieldSet unknownFields, CodedInputStream input) at Messages.RecordingStatusChangeMessage.MergeFrom(CodedInputStream input) in C:\Users\iliaar\go\src\RecorderApp\testers\NewRecorderTester\Infra.AppDataManager\Model\Protos\Pubsub\messages.pb.cs:line 3259 at ClusterRecordersModule.RecordersViewModel.OnNewMessage(Message message) in C:\Users\iliaar\go\src\RecorderApp\testers\NewRecorderTester\ClusterRecordersModule\ViewModels\RecordersViewModel.cs:line 154
innerMessageObject.MergeFrom(message.Msg.CreateCodedInput());
InnerMessageObject.Parser.ParseFrom(message.Msg.ToByteArray());
public class InnerMessageObject
{
public string ConfigID { get; set; }
public bool Storage { get; set; }
public bool Signal { get; set; }
public string StorageTransition { get; set; }
public string SignalTransition { get; set; }
}
63-6F-6E-66-69-67-5F-69-64-3A-20-37-32-30-62-66-65-34-39-2D-64-62-32-39-2D-34-35-38-33-2D-39-66-65-31-2D-65-30-32-30-37-33-32-37-39-37-39-34-0A-73-74-6F-72-61-67-65-3A-20-66-61-6C-73-65-0A-73-69-67-6E-61-6C-3A-20-66-61-6C-73-65-0A-73-74-6F-72-61-67-65-5F-74-72-61-6E-73-69-74-69-6F-6E-3A-20-22-32-30-32-30-2D-30-33-2D-30-33-54-31-32-3A-32-36-3A-34-31-2E-33-32-37-34-30-34-33-5A-22-0A-73-69-67-6E-61-6C-5F-74-72-61-6E-73-69-74-69-6F-6E-3A-20-22-32-30-32-30-2D-30-33-2D-30-33-54-31-32-3A-32-36-3A-34-31-2E-33-32-37-34-30-33-32-33-31-5A-22-0A
var ba = pubsubMessage.Msg.ToByteArray();
return Encoding.UTF8.GetString(ba);
config_id: 720bfe49-db29-4583-9fe1-e02073279794 storage: false signal: false storage_transition: "2020-03-03T12:29:59.531473957Z" signal_transition: "2020-03-03T12:29:59.531473589Z"
最佳答案
您的有效载荷 不是 protobuf .如果我们尝试通过 this validator , 我们看:
63 = field 12, type StartGroup
error: Invalid wire-type; this usually means you have over-written a file without truncating or setting the length; see Using Protobuf-net, I suddenly got an exception about an unknown wire-type
config_id: 720bfe49-db29-4583-9fe1-e02073279794
storage: false
signal: false
storage_transition: "2020-03-03T12:26:41.3274043Z"
signal_transition: "2020-03-03T12:26:41.327403231Z"
关于c# - 使用 C# Google.Protobuf 将 ByteString 反序列化为对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60505749/
运行以下代码: import Crypto.BCrypt import Data.ByteString.Lazy.Char8 main = do maybe_pwhash <- hashPassw
此代码不进行类型检查: import Network.HTTP.Conduit import qualified Data.ByteString.Char8 as BS main :: IO () m
我一直在尝试解决problem 1330来自 Haskell 的 acm.timus.ru。基本上,它归结为: 1) 从标准输入中读取一个长度为 N (N < 10^4) 和 M 对整数 (M < 1
我正在学习 Haskell,并决定尝试编写一些小型测试程序来习惯 Haskell 代码和使用模块。目前我正在尝试使用第一个参数来使用 Cypto.PasswordStore 创建密码哈希。为了测试我的
尝试编写一个返回我计算机的外部 IP 地址的模块。 使用 Network.Wreq get函数,然后应用一个镜头得到responseBody ,我最终得到的类型是 Data.ByteString.La
这是我在 Haskell 中尝试做的事情: 以 ByteString 格式获取消息(惰性或严格并不重要) 使用 RSA 公钥加密消息 对加密消息进行 Base64 编码 RSA library我正在使
我读到 Char8 仅支持 ASCII 字符,如果您使用其他 Unicode 字符,使用起来会很危险 {-# LANGUAGE OverloadedStrings #-} --import quali
我实现了读取 ByteString 并将其转换为十六进制格式的函数。 例如。给定“AA10”,它将其转换为 [170, 16] import qualified Data.ByteString.Laz
我对 real world haskell 中的代码有点困惑 import qualified Data.ByteString.Lazy.Char8 as L8 import qualified Da
我知道我已经有了 Haskell Data.ByteString.Lazy 函数来拆分单个字符的 CSV,例如: split :: Word8 -> ByteString -> [ByteString
需要从已离开的开发人员那里修补 Haskell 项目,但我是一个完整的 Haskell 菜鸟。 尝试编写一个函数来返回与某个模式匹配的所有 Redis 键的数量。交互地,它看起来像这样: *MyPro
我正在尝试在我的 Haskell 代码中启动并运行一个简单的 Json 解析器,我遇到了 Data.Aeson,这似乎是解决我的问题的可行解决方案 我关注了example code on the pa
我正在将包从使用 GHC.IO.Handle 进行网络转换为 Network.Connection.Connection。痛点之一是 Data.ByteString.Lazy.ByteString 更
我正在尝试为 django 应用程序设置数据库。 因此,当我尝试创建数据库时,除了一件事之外,一切正常。最后,出现以下消息: You just installed Django's auth syst
在 Python 中使用 SQLite3,我正在尝试存储 UTF-8 HTML 代码片段的压缩版本。 代码如下: ... c = connection.cursor() c.execute('crea
我正在编写一个脚本,它递归地扫描一个目录并将它们存储在一个字典中,该字典是一个列表的集合。该列表中包含具有文件名和文件大小的列表。此文件名可能包含 UTF-8 字符,如下所示。 ['test.rus
问候, 我试图理解为什么我看到整个文件使用以下程序加载到内存中,但是如果您注释掉“(***)”下面的行,那么程序会在恒定(大约 1.5M)空间中运行。 编辑:该文件大约 660MB,第 26 列中的字
对于字符串有 ++ , 它有类型 > :t (++) (++) :: [a] -> [a] -> [a] 显然它不适用于 ByteString因为它不是一个列表。我看到 append 功能,但它有一个
最近在我的项目上运行基准测试后,我发现直接构建严格的字节串可以比涉及构建器的构建快一个数量级。 例如,使用构建器的编码器实现: encoder :: Int64 -> Data.ByteString.
我希望压缩我的应用程序的网络流量。 根据(最新?)"Haskell Popularity Rankings" , zlib似乎是一个非常受欢迎的解决方案。 zlib的接口(interface)使用By
我是一名优秀的程序员,十分优秀!