Next-auth не получает данных email через VkProvider

route.ts

providers: [
        VkProvider({
            clientId: process.env.VK_CLIENT_ID ?? '',
            clientSecret: process.env.VK_CLIENT_SECRET ?? '',
        }),
    ],

GetUserEmail.tsx

'use client';
import {useSession} from 'next-auth/react';

export default function GetUserEmail() {
    const {data: session} = useSession();
    return session?.user?.email;
}

Пытаюсь получить данные почты пользователя через VkProvider от Next-Auth, но после авторизации возвращается только:

{
    "user": {
        "name": "Иван Ипатов",
        "image": "https://sun6-22.userapi.com/"
    },
    "expires": "2024-04-11T10:59:47.684Z"
}

По доступам всё есть: VK Dev

Заметил строку кода в типах:

profile(result: P) {
      const profile = result.response?.[0] ?? {}
      return {
        id: profile.id,
        name: [profile.first_name, profile.last_name].filter(Boolean).join(" "),
        email: null, // вот
        image: profile.photo_100,
      }
    },

Пытался переписать в route.ts

profile(profile) {
      return {
        id: profile.id,
        name: [profile.first_name, profile.last_name].filter(Boolean).join(" "),
        email: profile.email,
        image: profile.photo_100,
      }
    },

Эффекта не дало, нашёл смежную проблему на гитхабе, но она не решает мою проблему.

На моём аккаунте есть почта и номер телефона, при авторизации пишется, что я разрешаю доступ к email, но он не возвращается.


Ответы (0 шт):