【发布时间】:2021-05-17 18:30:33
【问题描述】:
OKHttp中的BufferSink(或BufferedSource)如何实现seek()函数?
我们都知道,在Java中,RandomAccessFile类有一个方法seek(long),可以让我们从特定位置开始读/写文件,该位置之前的字节会被丢弃。 OKHttp中是否有类似的方法?
我注意到BufferedSink中有一个方法:
write(byteString: ByteString, offset: Int, byteCount: Int)
可惜参数“offset”只接受int类型,不接受long类型,在传输大文件时有一定的限制。
【问题讨论】:
-
如果没有服务器端的额外支持,HTTP 流不会是随机访问的。当您试图寻找过去的两个演出时,您可能需要考虑替代协议,例如 RTMP 或其他协议。