¿Cómo crear un usuario usando la nueva API JSON en 4.7?

21 abr 2017, 22:59:37
Vistas: 23.5K
Votos: 5

Anteriormente tenía funcionando los plugins JSON API y JSON USER API antes de la versión 4.7 y he visto la documentación en la referencia de Usuario de la API REST, https://developer.wordpress.org/rest-api/reference/users/#create-a-user%20%22ReST%20API%20reference pero no sé cómo empezar. Estoy seguro de que debe haber un procedimiento de autenticación primero para obtener un nonce, pero tampoco sé cómo hacer eso ahora. Agradecería mucho si alguien pudiera mostrarme o indicarme algunos ejemplos de declaraciones cURL y URIs tanto para obtener el nonce como para crear un usuario.

Gracias de antemano

0
Todas las respuestas a la pregunta 2
0

La API REST incluida en WordPress no tiene autenticación incorporada de forma nativa.

Si realizas una autenticación normal en WordPress iniciando sesión, tu navegador recibirá un conjunto de cookies. Si envías esas cookies junto con tu solicitud, esto te autenticará para realizar las acciones correspondientes.

Si necesitas agregar autenticación para un servicio externo, debes instalar un plugin para manejarlo. Hay varios disponibles:

Si solo estás probando localmente, también existe un plugin de Autenticación Básica que te permite simplemente enviar tu nombre de usuario y contraseña con cada solicitud en un encabezado de Autorización:

En cualquier caso, una vez que hayas obtenido la cookie adecuada o habilitado el método de autenticación, crear un nuevo usuario es simple. Envía una solicitud POST a /wp-json/wp/v2/users con el nombre de usuario, correo electrónico y contraseña como carga útil.

Puedes encontrar esto documentado aquí:

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

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

21 abr 2017 23:52:32
1

Para 'Registrar Usuario' o 'Recuperar Contraseña', se requiere autenticación de un usuario con rol de 'Administrador'. Aunque esto se hace deliberadamente por razones de seguridad, dicha implementación dificulta mucho que las aplicaciones Front End puedan implementar una función simple de 'Registro' o 'Crear Cuenta'.

La solución sencilla es utilizar este plugin wp-rest-user. Este plugin satisface dicho requisito extendiendo los endpoints existentes de la API REST de WordPress.

USO

Envía una solicitud POST a /wp-json/wp/v2/users/register, incluyendo un cuerpo JSON con tres claves: username, email y password.

Envía una solicitud POST a /wp-json/wp/v2/users/lostpassword, incluyendo un cuerpo JSON con la clave: user_login.

Puedes usar Postman como en la siguiente imagen Ejemplo de solicitud POST en Postman para registro de usuario

O incluso una solicitud ajax, por favor mira el siguiente código:

<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' : 'testmember@gmail.com',
                'password' : '123456'
            })
        } ).done( function ( response ) {
            console.log( response );
        } )
    }           
</script>
<button onclick="addUserData()">Iniciar Envío</button>

Espero que esta respuesta pueda ayudar a muchas personas. Feliz Codificación.

13 dic 2018 17:25:14
Comentarios

Este plugin ha sido cerrado desde el 13 de julio de 2021 y no está disponible para descargar. Motivo: Violación de las directrices.

Seano Seano
18 jun 2023 15:15:56