web-dev-qa-db-fra.com

Comment utiliser "Se connecter avec Apple" avec Apple JS

J'utiliserais "Se connecter avec Apple" sur le Web via Apple JS. L'exemple de code peut être trouvé ici: https://developer.Apple.com/documentation/signinwithapplejs/configuring_your_webpage_for_sign_in_with_Apple

La question est maintenant: qu'est-ce que l'ID client et où puis-je le trouver. J'ai testé l'identifiant de l'ID d'application sur https://developer.Apple.com/account/resources/identifiers/list et j'ai testé l'identifiant de l'ID du service. Si je clique sur le bouton et vérifie avec Touch ID sur mon mac, j'ai l'erreur "AUTH_ALERT_SIGN_UP_NOT_COMPLETED":

enter image description here

Voici le code utilisé:

<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>

Je n'ai reçu aucune demande sur test.php.

10
Hanashi

L'ID client est l '"identifiant" de votre ID service pour lequel "Se connecter avec Apple" est activé:

Service ID Configuration

Apple vous recommande d'en faire le format suivant sur écran Enregistrer un ID de service :

Nous vous recommandons d'utiliser une chaîne de style de nom de domaine inverse (c'est-à-dire, com.domainname.appname). Il ne peut pas contenir d'astérisque (*).

10
Kaspars