Closed ghost closed 2 years ago
// WSPayload websocket 消息结构
type WSPayload struct {
WSPayloadBase
Data interface{} `json:"d,omitempty"`
RawMessage []byte `json:"-"` // 原始的 message 数据
}
type ATMessageEventHandler func(event *dto.WSPayload, data *dto.WSATMessageData) error
event 的 RawMessage 可以取到原始数据
那 OpenAPI呢?
openapi 有一个 Transport 方法,可以实现透传,但是需要将需要提交的数据自己进行序列化后传递。
至于具体的操作每个接口的封装,目前还是只能自己 Marshal 一下了
那可以加一套不需要json.Marshal
的嘛
我现在就是json.Marshal
那可以加一套不需要
json.Marshal
的嘛
目前看ROI不是很高,而且会带来大量的多余的方法。为了保持方法的一致性,输入对象,输出 byte,这种做法也不合适。
可以选择使用透传的那个方法,直接传递 marshal 好的数据,接收没有 unmarshal 的数据。
好吧咯
我需要把JSON传递给其他语言,所以直接返回[]byte更合适,不然还要把再
json.Marshal
转换成[]byte需要 参数还是
*dto.xxx
但返回值是([]byte, error)