s21toolkit / s21auto-client-go

Internal API client for edu.21-school.ru

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

s21auto-client-go 🍻🫃

Клиент для внутреннего GQL API платформы edu.21-school.ru. Предназначен для использования с s21auto для генерации запросов (requests/) из HAR логов платформы.

Important

Готовые версии автоклиента (со сгенерированным requests/) не публикуются на гитхабе. Если вам нужен простой доступ к платформе, используйте s21introspector вместе с любым GQL клиентом для Go. Если же нужен именно автоклиент, его нужно склонить и собрать самостоятельно по инструкции ниже.

Пример использования:

client := s21client.New(
  s21client.DefaultAuth(
    os.Getenv("S21_USERNAME"),
    os.Getenv("S21_PASSWORD")
  )
)

user, err := client.R().GetCurrentUser(requests.GetCurrentUser_Variables{})
if err != nil {
  t.Error(err)
}

fmt.Println(user)

Генерация методов

Методы клиента генерируются автоматически на основе запросов платформы к бекенду.

Для генерации запросов используется s21auto:

s21auto client generate log.har -o s21client/requests

Если какие-то методы не нужны, из папки requests можно удалить всё кроме context.go.

About

Internal API client for edu.21-school.ru


Languages

Language:Go 100.0%