我试图了解 Thrift 为 javascript 自动生成的 .read(input) 和 .write(output) 函数。
我找不到任何关于如何与这些作为 Javascript 对象的一部分的函数进行交互的文档。
链接或描述?
我试图了解 Thrift 为 javascript 自动生成的 .read(input) 和 .write(output) 函数。
我找不到任何关于如何与这些作为 Javascript 对象的一部分的函数进行交互的文档。
链接或描述?
因此,对于您在 .thrift 文件中定义的每个数据结构,Apache Thrift 将为您生成一个包含读取和写入方法的类,用于对该类型的对象进行序列化(写入)和反序列化(读取)。
现在 read 和 write 方法都将协议作为参数,并且在给定传输的情况下创建协议。您可以在以下链接中找到在 Thrift 上下文中协议和传输的含义:
http://anomalizer.net/statistically-incorrect/2010/11/introduction-thrift-serialization/
维基百科上 Thrift 层的图片和描述可能有助于理解数据如何在不同层之间传递。
现在我还没有在 Javascript 中尝试过这个,但是 thrift 支持的不同语言的库看起来非常相似。所以在 Python 中,这就是读写方法的使用方式:
//SERIALIZATION:
transportOut = TTransport.TMemoryBuffer()
protocolOut = TBinaryProtocol.TBinaryProtocol(transportOut)
work.write(protocolOut)
bytes = transportOut.getvalue() # the string 'bytes' can be written out to disk
# to be read in at a different time
// DESERIALIZATION
transportIn = TTransport.TMemoryBuffer(bytes)
protocolIn = TBinaryProtocol.TBinaryProtocol(transportIn)
moreWork = Work()
moreWork.read(protocolIn)
高温高压