Что такое REST API

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

Ответ

REST API (Representational State Transfer) — это архитектурный стиль для создания веб-сервисов, основанный на HTTP. Он использует стандартные методы (GET, POST, PUT, DELETE и др.) для взаимодействия с ресурсами, представленными в формате JSON или XML.

Ключевые принципы:

  • Stateless — сервер не хранит состояние клиента между запросами.
  • Ресурсы — всё представлено в виде URI (например, /users).
  • HTTP-методы — определяют действие (GET — чтение, POST — создание и т. д.).

Пример на Go (с net/http):

package main

import (
    "encoding/json"
    "net/http"
)

type User struct {
    ID   int    `json:"id"`
    Name string `json:"name"`
}

func main() {
    http.HandleFunc("/users", func(w http.ResponseWriter, r *http.Request) {
        if r.Method == "GET" {
            users := []User{{1, "Alice"}, {2, "Bob"}}
            json.NewEncoder(w).Encode(users)
        }
    })
    http.ListenAndServe(":8080", nil)
}

REST API популярен благодаря простоте, масштабируемости и совместимости с HTTP.

Видео-ответы