Опубликовать с указанием местоположения файла

Я пытаюсь отправить этот запрос через POST с помощью Go.

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.

Какие-нибудь советы о том, как это решить?

Спасибо!

Вам нужно будет открыть файл с помощью os.File и отправить его через тело запроса.

Adrian 10.08.2018 16:35
0
1
36
1

Ответы 1

Вам нужно будет прочитать файл и добавить его как тело запроса. В ioutils есть помощник, и вы можете просто избавиться от своей структуры и передать тело напрямую. В этом суть. Конечно, вы должны обработать ошибки, и вам может потребоваться подготовить запрос заранее, чтобы вы могли добавить дополнительные заголовки перед отправкой.

body, err := ioutils.ReadFile(yourPath)
reqs, err := http.Post(uri, "image/png", &body)

Другие вопросы по теме