Skip to content

Vkashka

Vkashka — библиотека для работы с VK API версии 5.199. Построена на базе Cohttp и Lwt без зависимости на конкретную реализацию.

Не покрывает весь функционал, так как создавалась для решения задачи X. Но даёт возможность самостоятельно расширить функционал, как обычным форком, либо in-place расширением модуля.

Пример

ocaml
(* Выбираете подходящий для себя Cohttp+Lwt совместимый бекенд. *)
#require "cohttp-lwt-unix";;
ocaml
(* Создание first-class модуля Token для. *)
let token = Vkashka.access_token "YOUR_TOKEN"

(* Создание модуля для работы с API с внедренными зависимостями: 
   реализация Cohttp+Lwt-совместимого клиента и токен.  *)
module Vk_api = Vkashka.Api (Cohttp_lwt_unix.Client) (val token)

(* Получение одного пользователя.  *)
Vk_api.Users.(get ~user_ids:["username"] () |> first)
(* - : Vkashka.User.t option *)

В случае ошибки от API (например, при неверном токене) бросается исключение Response.Api_error, в случае ошибки парсинга Response.Parse_error.