Разрешить скачивание файла с моей конечной точки REST в Голанге с использованием стороннего API - PullRequest
0 голосов
/ 21 февраля 2019

Это может показаться странным, но я разрабатываю конечную точку (REST), которая позволяет пользователям загружать файл (может быть, zip).Поэтому я использую сторонний API для получения файла, а затем я должен передать его конечным пользователям.

Я не могу предоставить сторонние API.Я также новичок в Golang и REST API.Я могу исследовать эту концепцию, но у кого-то есть идеи, как лучше всего разрешить загрузку файла с вашей конечной точки REST, которая на самом деле идет от третьей стороны.

Я знаю, что это очень плохой способ задать вопрос, ноЯ понятия не имею, что я должен исследовать или читать любой блог, который дает мне эту идею.

Я не ищу код, но больше идеи.

1 Ответ

0 голосов
/ 21 февраля 2019

Golang имеет абстракцию io.Reader, которая инкапсулирует практически все, что может быть прочитано в двоичном формате.
Обычно, если у вас есть файл, поступающий от стороннего API, у вас будет хотя бы один способ создать io.Reader из этого файла, будь то HTTP-запрос, gRPC или локальный файл.

Если у вас есть io.Reader, то запрашивающая сторона определенно предоставит io.Writer, чтобы позволить вам написать ответони просят.После этого вам нужно только соединить io.Reader и io.Writer, чтобы скопировать на лету файл из стороннего API запрашивающей стороне, используя, например, io.Copy или io.CopyN.

...