API REST obtener usuarios

17 may 2019, 03:21:23
Vistas: 24.3K
Votos: 2

cuando hago http://dayroomstay.com/wp-json/wp/v2/users

Obtengo:

"code": "rest_user_cannot_view",
    "message": "Lo sentimos, no tienes permiso para listar usuarios.",
    "data": {
        "status": 401
    }

Estoy usando Postman... por favor ayuda

3
Comentarios

¿Cómo has configurado la autenticación con Postman? Ese es un endpoint autenticado, obtengo el mismo resultado si visito ese endpoint (soy un usuario no logueado, así que es lo esperado)

Tom J Nowell Tom J Nowell
17 may 2019 04:16:57

Hola Tom, gracias,

David Delatorre David Delatorre
17 may 2019 06:15:03

¿Podrías orientarme en la dirección correcta sobre cómo configurar la autenticación con Postman? Soy nuevo en esto...

David Delatorre David Delatorre
17 may 2019 06:17:01
Todas las respuestas a la pregunta 1
4

Lee la documentación: necesitas agregar un encabezado llamado X-WP-Nonce a tus solicitudes a la API que requieran autenticación, como puedes ver en el ejemplo de jQuery.

Sin embargo, el truco es obtener ese nonce en primer lugar. WordPress inyecta ese token por sí mismo en las pantallas de edición de entradas. Escribe wpApiSettings en la consola de desarrollador y podrás obtener el nonce. También necesitarás enviar tu cookie wordpress_logged_in, que se puede recuperar de los encabezados de solicitud en la pestaña Red de las herramientas de desarrollo de tu navegador.

Comparto un ejemplo de cómo colocar esos encabezados en tu solicitud de Postman:

Ejemplo en Postman de solicitud autenticada a la API REST de WordPress

Sin embargo, implementarlo para una aplicación que no está acoplada al backend de WP puede ser engorroso, por eso existen otras opciones, como la autenticación básica de la que no soy muy fan, y el plugin de autenticación JWT. Ambos están enlazados en la página de documentación que compartí.

17 may 2019 19:40:20
Comentarios

¡funcionó! @JesusFranco Eres un genio

David Delatorre David Delatorre
18 may 2019 16:47:33

Me alegra poder ayudar. Recuerda que en tus próximas preguntas compartas el código que has escrito, o en casos demasiado complejos, un ejemplo mínimo reproducible, eso ayudaría a la comunidad a ayudarte más rápidamente.

Jesús Franco Jesús Franco
18 may 2019 23:19:07

Ahora me pregunto cómo generar el nonce y las cookies usando solo el código.

Amir Hajiha Amir Hajiha
8 oct 2019 13:40:20

Mira la página de documentación que está enlazada, el primer código que aparece es lo que necesitarías incluir en el controlador/script/o lo que estés utilizando para enviar las credenciales a tu cliente alternativo.

Jesús Franco Jesús Franco
9 oct 2019 01:47:02