数据序列化技术全解析
1. ASN.1 序列化及应用
ASN.1 在序列化方法的实现中提供了多种选择。指针可以通过更多代码进行特殊处理,例如强制名称匹配。字符串的顺序和数量取决于序列化规范的细节、允许的灵活性以及利用该灵活性所需的编码工作。不同的序列化格式会做出不同的选择,不同语言的实现也会强制执行不同的规则。
下面我们来看如何使用 ASN.1 进行网络数据传输。
1.1 ASN.1 日间服务器
可以编写一个 TCP 服务器,使用上一章的技术将当前时间作为 ASN.1 时间类型进行传输。以下是 asndaytimeserver.go 的代码:
/* ASN1 DaytimeServer
*/
package main
import (
"encoding/asn1"
"log"
"net"
"time"
)
func main() {
service := ":1200"
tcpAddr, err := net.ResolveTCPAddr("tcp", service)
checkError(err)
listener, err := net.ListenTCP("tcp", tcpAddr)
checkError(err)
for {
conn, err := listener.Accept()
if err != nil {
超级会员免费看
订阅专栏 解锁全文

3092

被折叠的 条评论
为什么被折叠?



