首页 > 解决方案 > 尝试重新创建 Web 服务的模拟版本

问题描述

我正在尝试在 Go 中模拟一些 API 进行测试 - 我没有原始 API 的源代码,但我可以调用它们。

我正在努力解决的问题是,它们中的一些在调用部分的格式与我习惯的有点不同,因为似乎没有文件名只是数据 - 我在这里有三个 Postman 快照,当它看起来您调用原始网络服务(它上传一个 csv 文件):

在此处输入图像描述

在此处输入图像描述

在此处输入图像描述

如果我尝试使用这样的处理程序,它会恐慌:

file, handler, err := r.FormFile("File")
defer file.Close()

// copy example
f, err := os.OpenFile("./downloaded", os.O_WRONLY|os.O_CREATE, 0666)
defer f.Close()
io.Copy(f, file)

它在对 FormFile 的调用中失败了-我知道它是因为文件在正文中。如何通过 Postman 的客户端调用使其在 Go 中的服务器端工作?

编辑

它引发的恐慌是:

runtime error: invalid memory address or nil pointer dereference

标签: go

解决方案


推荐阅读