Pregunta sobre Developing with WordPress de Wordpress:

La llamada Ajax REST ignora la autenticaci贸n b谩sica

Un usuario pregunt贸 馃憞

Hola a todos,

Quiero hacer una llamada REST (que requiere autorizaci贸n) a WordPress desde un sitio externo. He le铆do la documentaci贸n e instalado el plugin necesario para que funcione la autenticaci贸n b谩sica.

Funciona perfectamente cuando se aplica a trav茅s de Postman. Pero cuando la solicitud Ajax (jQuery) se realiza desde mi sitio externo, parece que la solicitud siempre intenta utilizar la cookie de WordPress en lugar de la autenticaci贸n b谩sica o intenta realizar la solicitud sin ninguna autorizaci贸n en absoluto. Sigo recibiendo un error 401.

He intentado muchas formas de corregir la informaci贸n de autorizaci贸n y ninguna de ellas ha funcionado hasta ahora: beforeSend, campo de encabezados,鈥 No se ignora, incluso si las credenciales inv谩lidas interfieren con algo. La verificaci贸n de la solicitud en las herramientas de desarrollo de Chrome revela que el encabezado de autorizaci贸n est谩 configurado en los encabezados de la solicitud.

驴Qu茅 debo hacer para realizar una llamada REST (quiero comentar por publicaci贸n) desde un sitio externo? 隆Aprecio cualquier idea!

Este tema fue modificado hace 2 a帽os, 5 meses por. Este tema fue modificado hace 2 a帽os, 5 meses por.

(@bcworkz)

Hace 2 a帽os, 5 meses

Est谩s usando el Autenticaci贸n b谩sica 驴enchufar? Tenga en cuenta que no es muy seguro. Recomiendo una de las alternativas.

Para usar t茅cnicas de Ajax con Basic-Auth, me enfocar铆a en la autorizaci贸n lanzando un encabezado 芦Autorizado禄 apropiado construido como WP_Http en mi primer enlace. En lugar de usar c贸digo jQuery / JavaScript para hacer eso. Codificaci贸n Base64 con btoa () (limitado a caracteres de 8 bits). Env铆e encabezados al beforeSend: par谩metro .ajax (). Creo que esto se hace con xhr.setRequestHeader (), pero estamos saliendo de mi 谩rea de especializaci贸n.

Lanzador de hilos

(@ dukan90)

Hace 2 a帽os, 5 meses

Eso es exactamente lo que hice: enviar los encabezados autorizados correctos, con codificaci贸n btoa (), etc. He probado tantas versiones que he encontrado en Internet y nada ha funcionado hasta ahora. Cada vez que parece que se ignora el encabezado de autorizaci贸n y se usa la cookie de autorizaci贸n del usuario de inicio de sesi贸n actual (cuando estoy dentro de un contexto de wordpress, por supuesto, error 401 en caso contrario).

Con respecto a varios m茅todos de autorizaci贸n: he intentado utilizar el enfoque OAuth pero no estoy seguro de si este m茅todo es el camino a seguir para mi caso de uso: b谩sicamente no tengo una sola aplicaci贸n del lado del cliente (HTML / JS) y har铆a solicitudes de autenticaci贸n a la API de WordPress. 驴C贸mo abordar铆a esto en general?

(@bcworkz)

Hace 2 a帽os, 5 meses

驴Qu茅 cliente en concreto? 驴Navegador? En ese caso, esperar铆a la autenticaci贸n de cookies o har铆a solicitudes Ajax normales. No estoy seguro de d贸nde encajar铆a oAuth. Es cierto que es trivial de arreglar. Tambi茅n hay algunas otras opciones. Consulte el enlace 芦alternativas禄 en mi 煤ltima respuesta. JSON Web Tokens suena perfecto para una aplicaci贸n JS, aunque no tengo experiencia con eso.

驴Solucion贸 tu problema??

0 / 0

Deja una respuesta 0

Tu direcci贸n de correo electr贸nico no ser谩 publicada. Los campos obligatorios est谩n marcados con *