Как использовать «Войти через Apple» с Apple JS - PullRequest
5 голосов
/ 04 июня 2019

Я бы использовал «Войти через Apple» в Интернете через Apple JS. Пример кода можно найти здесь: https://developer.apple.com/documentation/signinwithapplejs/configuring_your_webpage_for_sign_in_with_apple

Вопрос теперь в том, что такое идентификатор клиента и где его можно найти. Я протестировал идентификатор идентификатора приложения на https://developer.apple.com/account/resources/identifiers/list и протестировал идентификатор идентификатора службы. Если я нажимаю на кнопку и проверяю Touch ID на моем Mac, я получаю сообщение об ошибке «AUTH_ALERT_SIGN_UP_NOT_COMPLETED»:

enter image description here

Это используемый код:

<html>
    <head>
    </head>
    <body>
        <button id="sign-in-with-apple-button"> Sign In with Apple </button>
        <script type="text/javascript" src="https://appleid.cdn-apple.com/appleauth/static/jsapi/appleid/1/en_US/appleid.auth.js"></script>
        <script type="text/javascript">
            AppleID.auth.init({
                clientId : 'unknown',
                scope : 'email',
                redirectURI: 'https://mytld/test.php',
                state : 'DE'
            });

            const buttonElement = document.getElementById('sign-in-with-apple-button');
            buttonElement.addEventListener('click', () => {
                AppleID.auth.signIn();
            });
        </script>
    </body>
</html>

У меня нет запроса на test.php.

1 Ответ

4 голосов
/ 04 июня 2019

Идентификатор клиента - это «Идентификатор» вашего Сервисного идентификатора , для которого включена функция «Войти через Apple»:

Service ID Configuration

Apple рекомендует сделать следующий формат в Регистрация идентификатора услуги :

Мы рекомендуем использовать строку стиля обратного доменного имени (т.е. com.domainname.appname). Не может содержать звездочку (*).

...