Skip to content

grulex/vk-photo-hosting

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Бесплатный хостинг фотографий VK

Для хакатонов или пет-проектов.

Установка

go get github.com/grulex/vk-photo-hosting

Начало

  • Регистрируемся на vk.com
  • Создаём новое сообщество тут. Рекомендуется в "тип группы" выбирать "частная", чтобы случайные посетители не видели ваши альбомы
  • В "Альбомах" создаём новый альбом. Открыть раздел можно по ссылке вида https://vk.com/albums-{id сообщества}
  • Копируем URL полученного альбома. В ссылке видим {Id группы}-{Id Альбома}
  • Получаем токен пользователя тут. После предоставления доступа копируем из URL значениеaccess_token

Таким образом, мы получили всё необходимое для работы с библиотекой: userToken, groupId, albumId

Использование

Создание объекта хостинга

import "github.com/grulex/vk-photo-hosting"
//...
hosting := vkphotohosting.NewHosting(userToken, groupId, time.Minute)

Загрузка файла в альбом

photoPath := "/tmp/myphoto.jpg"
id, variants, err := hosting.UploadByFile(context.Background(), albumId, photoPath)
  • id — идентификатор фотографии в альбоме
  • variants — коллекция с разными размерами фотографии. Есть методы для получения максимального и минимального размера. В каждом объекте есть свой URL и размеры.

Все методы

// Загрузка из Reader
UploadByReader(ctx context.Context, albumId uint64, image io.Reader)

// Загрузка по пути к файлу
UploadByFile(ctx context.Context, albumId uint64, filePath string) (id uint64, variants internal.Variants, err error)

// Загрузка из внешнего URL в свой альбом
UploadByUrl(
    ctx context.Context,
    albumId uint64,
    photoUrl string,
    downloadTimeout time.Duration,
) (
    id uint64,
    variants internal.Variants,
    err error,
)

Лимиты

  • Количество запросов в секунду. Можно повторно выполнить через 1 сек.
  • 5000 фотографий в одном альбоме. Можно создать новый альбом в группе

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages