Работал ли с API

«Работал ли с API» — вопрос из категории Архитектура, который задают на 23% собеседований Golang Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Да, работал с API, в основном RESTful и gRPC. В Go часто использую стандартный net/http для клиентов и серверов.

Пример GET-запроса:

resp, err := http.Get("https://api.example.com/data")
if err != nil {
    log.Fatal(err)
}
defer resp.Body.Close()

body, err := io.ReadAll(resp.Body)
if err != nil {
    log.Fatal(err)
}
fmt.Println(string(body))

Для сложных сценариев (JSON, авторизация) применяю http.Client с кастомными заголовками или библиотеки типа resty. Также работал с OpenAPI/Swagger, генерацией клиентов через oapi-codegen.