go - IPFS http 响应偶尔会出现 EOF 错误且正文正确
问题描述
当我在下面的代码中调试时,有时它可以正确地从正文中读取数据,但会出现EOF错误。
func (r *trailerReader) Read(b []byte) (int, error) {
n, err := r.resp.Body.Read(b)
if err != nil {
if e := r.resp.Trailer.Get("X-Stream-Error"); e != "" {
err = errors.New(e)
}
}
return n, err
}
我在我的代码中调用了这个方法:
// FilesRead read a file in a given MFS
func (s *Shell) FilesRead(ctx context.Context, path string, options ...FilesOpt) (io.ReadCloser, error) {
rb := s.Request("files/read", path)
for _, opt := range options {
if err := opt(rb); err != nil {
return nil, err
}
}
resp, err := rb.Send(ctx)
if err != nil {
return nil, err
}
if resp.Error != nil {
return nil, resp.Error
}
return resp.Output, nil
}
有什么想法吗?
解决方案
推荐阅读
- google-apps-script - 为什么我的电子表格没有从外部来源的输入值更改?
- python - 无法将参数传递给 XGBoost
- xml - 将映射为隐藏在 XML 中的列读回 VB.Net 中的 DataSet?
- bash - 在后续条目中重用文本条目中的数值
- vba - 如何判断vba中的语句是否可以有行号
- r - 如何计算将区域划分为特定大小的块的最佳方法?
- function - Octave 不断给出函数的结果,尽管没有被问到
- javascript - 如何使用 JavaScript 保持分数格式?
- javascript - 如何解决此“预期在箭头函数中返回值”错误
- database - 如何为这个程序创建一个好的 ER 模型(关于我的 ER 模型的问题)