我正在为一个将使用 AWS 兼容系统作为后端的项目实现自定义 sftp 服务器。根据我所看到的,我认为我应该实现 sftp.Handlers使用 s3.Uploader and s3.Downloader 的界面或 s3.PutObject and s3.GetObject .
我用过 io.PipeReader和 io.PipeWriter在将 io.Writer 通过管道传输到 io.Reader 之前,但在这种情况下,我需要执行以下操作:
- 获取:io.ReaderAt <- ??? <- io.Reader
- 放:io.WriterAt -> ??? -> io.Reader
我猜???在这两种情况下都会有所不同,但它们看起来都像是一种管道,我们在其中保存数据直到另一端可用。是否存在这样的事情,或者我需要自己实现吗?有什么实现建议吗?
最佳答案
我个人正在使用 https://github.com/avvmoto/buf-readerat专门缓冲 ReadAt。为我省去了很多痛苦。
关于go - 有没有一种简单的方法来缓冲 io.ReaderAt 和 io.WriterAt?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44529031/