我有以下代码:var buf []byteread_len, err := conn.Read(buf)if err != nil { fmt.Println("Error reading:", err.Error())}buffer := make([]byte, read_len)_, err = conn.Read(buffer)if err != nil { fmt.Println("Error reading:", err.Error())}目的是确定read_len第一个buf,然后创建第二个buffer,这是传入 json 请求的确切长度。这只会导致错误JSON 输入意外结束当我尝试解组时var request Device_Type_Request_Structerr = json.Unmarshal(buffer, &request)我假设发生此错误是因为conn.Read(buffer)没有返回任何内容,因为另一个缓冲区已经读取了它(虽然不确定)。我应该如何确定 json 请求的长度,同时又能够将其读入缓冲区(长度完全相同)?
- 1 回答
- 0 关注
- 92 浏览
添加回答
举报
0/150
提交
取消