Интеграция функции «Поделиться фото» ВКонтакте в Next.js приложение
На сайте, построенном на Next.js с использованием App Router, реализована функция покупки и скачивания фотографий. Требуется добавить возможность для авторизованных пользователей делиться фото во ВКонтакте.
Для обхода ограничений авторизации создан специальный публичный роут: /public/vk-share?share_image_url={{url}}. На этой странице настроены метаданные Open Graph для корректного отображения контента в социальных сетях.
Текущая реализация
В файле страницы /public/vk-share настроена генерация метаданных:
- Заголовок: «Поделиться фото»
- Описание: «Фото для публикации ВКонтакте»
- Open Graph теги с указанием URL, названия сайта и изображения (с параметрами width, height, alt)
- Дополнительный тег
image_src
На защищенной странице размещена ссылка для шаринга, которая ведет на конструктор ВКонтакте:
<Link href=`https://vk.com/share.php?url=https://${ENV_FRONTEND_DOMAIN}/public/vk-share?share_image_url=${url}`>...</Link>
Проблема
При переходе по ссылке открывается страница ВКонтакте «Поделиться ссылкой», однако при отправке или предпросмотре изображение не отображается.
Предположения о причинах
- Возможно, используется неподходящий API ВКонтакте для передачи изображений
- Мета-теги Open Graph могут быть настроены некорректно или недостаточно
- Отсутствует доступная документация по конкретной реализации этой функциональности
Требуется помощь в определении корректного метода реализации функции шаринга изображений ВКонтакте с использованием мета-тегов и API социальной сети.