Я реализовал вход через Apple на моем веб-сайте. Но проблема в том, что он работает только с Apple ID моего разработчика.
Я попытался использовать свой персональный Apple ID из той же среды, и процесс входа также прошел нормально.
Однако, когда реальные пользователи пытаются использовать эту функцию, Apple возвращает неправильный ответ с пустым полем JSON для user
, например:
{
"state": "20cadefd",
"code": "c0f4d18d62a124c9482dec72e9b647f6d.0.nwus.L-JUin6NT_fZPDn4B8oYaA",
"user" => "{}"
}
Как вы можете видите, пользовательский объект пуст.
Запрос https://appleid.apple.com/auth/token
также не возвращает претензию по электронной почте. Также сообщается, что пользователи не видят обычного шага, где можно поделиться или скрыть свою реальную электронную почту.
Что мне здесь не хватает?
* ОБНОВЛЕНИЕ *
Что касается id_token
, я могу получить его и декодировать, он дает следующее:
{
"iss": "https://appleid.apple.com",
"aud": "<SERVICE ID>",
"exp": 1578056278,
"iat": 1578055678,
"sub": "<SUB ID>",
"at_hash": "rFEqY8BcGQVfxwFxgAsWsA",
"auth_time": 1578055675
}
По-прежнему нет поля электронной почты
* ОБНОВЛЕНИЕ *
При дальнейших тестах кажется, что поле "пользователь" пусто когда пользователь входит в систему с помощью своего Touch ID. Когда он использует пароль, все нормально.