From 5a1fd7daddbb07b93e3611d023ea48e1991fc0c6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 28 Jan 2022 23:48:40 +0100 Subject: Bump github.com/SevereCloud/vksdk/v2 from 2.11.0 to 2.13.0 (#1698) Bumps [github.com/SevereCloud/vksdk/v2](https://github.com/SevereCloud/vksdk) from 2.11.0 to 2.13.0. - [Release notes](https://github.com/SevereCloud/vksdk/releases) - [Commits](https://github.com/SevereCloud/vksdk/compare/v2.11.0...v2.13.0) --- updated-dependencies: - dependency-name: github.com/SevereCloud/vksdk/v2 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .../github.com/SevereCloud/vksdk/v2/api/README.md | 50 +++++++++++++++++++++- 1 file changed, 49 insertions(+), 1 deletion(-) (limited to 'vendor/github.com/SevereCloud/vksdk/v2/api/README.md') diff --git a/vendor/github.com/SevereCloud/vksdk/v2/api/README.md b/vendor/github.com/SevereCloud/vksdk/v2/api/README.md index 770ab025..5d2d0c76 100644 --- a/vendor/github.com/SevereCloud/vksdk/v2/api/README.md +++ b/vendor/github.com/SevereCloud/vksdk/v2/api/README.md @@ -3,7 +3,7 @@ [![PkgGoDev](https://pkg.go.dev/badge/github.com/SevereCloud/vksdk/v2/api)](https://pkg.go.dev/github.com/SevereCloud/vksdk/v2/api) [![VK](https://img.shields.io/badge/developers-%234a76a8.svg?logo=VK&logoColor=white)](https://vk.com/dev/first_guide) -Данная библиотека поддерживает версию API **5.122**. +Данная библиотека поддерживает версию API **5.131**. ## Запросы @@ -80,6 +80,54 @@ if errors.As(err, &e) { Для Execute существует отдельная ошибка `ExecuteErrors` +### Поддержка MessagePack и zstd + +> Результат перехода с gzip (JSON) на zstd (msgpack): +> +> - в 7 раз быстрее сжатие (–1 мкс); +> - на 10% меньше размер данных (8 Кбайт вместо 9 Кбайт); +> - продуктовый эффект не статзначимый :( +> +> [Как мы отказались от JPEG, JSON, TCP и ускорили ВКонтакте в два раза](https://habr.com/ru/company/vk/blog/594633/) + +VK API способно возвращать ответ в виде [MessagePack](https://msgpack.org/). +Это эффективный формат двоичной сериализации, похожий на JSON, только быстрее +и меньше по размеру. + +ВНИМАНИЕ, C MessagePack НЕКОТОРЫЕ МЕТОДЫ МОГУТ ВОЗВРАЩАТЬ +СЛОМАННУЮ КОДИРОВКУ. + +Для сжатия, вместо классического gzip, можно использовать +[zstd](https://github.com/facebook/zstd). Сейчас vksdk поддерживает zstd без +словаря. Если кто знает как получать словарь, +[отпишитесь сюда](https://github.com/SevereCloud/vksdk/issues/180). + +```go +vk := api.NewVK(os.Getenv("USER_TOKEN")) + +method := "store.getStickersKeywords" +params := api.Params{ + "aliases": true, + "all_products": true, + "need_stickers": true, +} + +r, err := vk.Request(method, params) // Content-Length: 44758 +if err != nil { + log.Fatal(err) +} +log.Println("json:", len(r)) // json: 814231 + +vk.EnableMessagePack() // Включаем поддержку MessagePack +vk.EnableZstd() // Включаем поддержку zstd + +r, err = vk.Request(method, params) // Content-Length: 35755 +if err != nil { + log.Fatal(err) +} +log.Println("msgpack:", len(r)) // msgpack: 650775 +``` + ### Запрос любого метода Пример запроса [users.get](https://vk.com/dev/users.get) -- cgit v1.2.3