我正在尝试使用Go通过POST发送此请求。
curl https://api.onfido.com/v2/applicants/1030303-123123-123123/documents \
-H 'Authorization: Token token=your_api_token' \
-F 'type=passport' \
-F 'file=@localfile.png;type=image/png'
目前,我不知道如何处理-F参数。
我创建了以下结构
type DocumentRequest struct {
Type string `json:"type"`
File string `json:"file"`
}
我通过它发送的
res, err := s.Post(assembleURL(“https://api.onfido.com/v2/applicants/", userID, "documents"), d, doc, &apiErr)
其中d
是我的DocumentRequest。
有任何解决方法的提示吗?
谢谢!
答案 0 :(得分:0)
您将必须读取文件并将其添加为请求正文。 ioutils
中有一个助手,您可以摆脱结构并直接传递身体。这是要点。 Ofc,您应该处理错误,并且可能需要预先准备好请求,以便可以在发送之前添加其他标头。
body, err := ioutils.ReadFile(yourPath)
reqs, err := http.Post(uri, "image/png", &body)