io.Writer的日志数据

时间:2018-06-26 14:23:35

标签: go streamwriter writer

我想创建一种方法,该方法需要一个“ o.Writer and wraps a cipher.StreamWriter`来对编写器进行加密。由于调试原因,我想打印出哪些数据通过编写器。我该如何实现?

加密代码只是占位符,因此固定密钥,iv等仅用于测试事物。

func NewEncryptionWriter(w io.Writer) io.WriteCloser {
    key, _ := hex.DecodeString("6368616e676520746869732070617373")
    c, _ := aes.NewCipher(key)
    iv := make([]byte, aes.BlockSize)
    return &cipher.StreamWriter{S: cipher.NewOFB(c, iv), W: w}
}

1 个答案:

答案 0 :(得分:2)

您可能想看一下io软件包中的MultiWriter:类似于Unix tee(1)命令,它会创建一个写入器,将其写入复制到所有提供的写入器中。