web-dev-qa-db-fra.com

Comment créer un utilisateur avec la nouvelle API JSON dans la version 4.7?

Auparavant, les plugins API JSON et API JSON USER fonctionnaient avant la version 4.7 et j'ai consulté la documentation sur la référence utilisateur de l'API ReST, https://developer.wordpress.org/rest-api/reference/users/#create- a-user% 20% 22ReST% 20API% 20reference mais je ne sais pas comment commencer. Je suis sûr qu’il faut une procédure d’authentification préalable pour obtenir un nonce, mais je ne sais plus comment procéder. J'apprécierais vraiment que quelqu'un me montre ou m'indique des exemples d'instructions cURL et d'URI pour obtenir le nonce et créer un utilisateur.

TIA

4
n8bar

L’API REST incluse dans WordPress n’a pas en réalité d’authentification intégrée.

Si vous vous authentifiez normalement dans WordPress en vous connectant, votre navigateur recevra un ensemble de cookies. Si vous envoyez ces cookies avec votre demande, cela vous authentifiera pour effectuer les actions en question.

Si vous devez ajouter une authentification pour un service externe, vous devez installer un plugin pour le gérer. Quelques-uns sont disponibles:

Si vous ne testez que localement, il existe également un plug-in d'authentification de base qui vous permet simplement d'envoyer votre nom d'utilisateur et votre mot de passe avec chaque demande dans un en-tête d'autorisation:

Dans tous les cas, une fois que vous avez obtenu le cookie approprié ou activé la méthode d'authentification, la création d'un nouvel utilisateur est simple. Envoyez une demande POST à/wp-json/wp/v2/users avec le nom d'utilisateur, l'adresse e-mail et le mot de passe comme charge utile.

Vous pouvez trouver ceci documenté ici:

https://developer.wordpress.org/rest-api/using-the-rest-api/

https://developer.wordpress.org/rest-api/using-the-rest-api/authentication/

7
Otto

Pour pouvoir "enregistrer un utilisateur" ou "récupérer un mot de passe", l’authentification d’un utilisateur doté du rôle "administrateur" est requise. Bien que cette opération soit effectuée délibérément pour des raisons de sécurité, cette implémentation empêche les applications frontales d’implémenter une simple fonction "Enregistrer" ou "S'inscrire".

La solution simple consiste à utiliser ce wp-rest-user plugin. Ce plug-in répond à cette exigence en étendant les points de terminaison de l'API WordPress REST existants.

USAGE

Envoyez une demande POST à /wp-json/wp/v2/users/register, y compris un corps JSON avec trois clés: nom d'utilisateur, email et mot de passe.

Envoyez une demande POST à /wp-json/wp/v2/users/lostpassword, y compris un corps JSON avec trois clés: user_login.

Vous pouvez utiliser postman comme image ci-dessous  enter image description here 

Ou même demande ajax, s'il vous plaît voir le code ci-dessous

<script>
    function addUserData(){
            $.ajax( {
            url: 'http://localhost/lapaktrip/wp-json/wp/v2/users/register',
            method: 'POST', 
            contentType: "application/json; charset=utf-8",  
            dataType: "json", 
            data:JSON.stringify({
                'username' : 'testmember',
                'email' : '[email protected]',
                'password' : '123456'
            })
        } ).done( function ( response ) {
            console.log( response );
        } )
    }           
</script>
<button onclick="addUserData()">Start Sending</button>

J'espère que cette réponse peut aider beaucoup de gens là-bas. Bonne Codding.

2
Yohanes AI