He estado trabajando en esto durante meses y he hablado con mi anfitrión, la compañía, etc. y puedo hacer que mi llamada API funcione en su página de desarrollador que tiene un código de ejemplo para probar su API, pero por mi vida no puedo conseguirlo. para trabajar en mi sitio de Wordpress y es muy necesario.
Mi código inicial es el siguiente:
const options = { method: 'POST', headers: { Accept: '*/*', 'Content-Type': 'application/json', Authorization: 'Basic XXXXXXXREDACTEDXXXXX' }, body: JSON.stringify({firstName: 'John', lastName: 'Doe', phoneNumber: '5444455555'}) }; fetch('https://a.eztexting.com/v1/contacts', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));El primer error que recibo es: El acceso para buscar en 'https://a.eztexting.com/v1/contacts' desde el origen 'https://businessofimagination.com' ha sido bloqueado por la política de CORS: la respuesta a la solicitud de verificación previa no t pasar la verificación de control de acceso: no hay ningún encabezado 'Access-Control-Allow-Origin' en el recurso solicitado. Si una respuesta opaca satisface sus necesidades, establezca el modo de la solicitud en 'no-cors' para obtener el recurso con CORS deshabilitado.
después de probar muchos encabezados diferentes en todo Wordpress y mi tema, finalmente incluí: "modo: 'no-cors'" en mi código
El código actualizado es el siguiente:
const options = { method: 'POST', mode: 'no-cors', headers: { Accept: '*/*', 'Content-Type': 'application/json', Authorization: 'Basic XXXXXXREDACTEDXXXXXX' }, body: JSON.stringify({firstName: 'John', lastName: 'Doe', phoneNumber: '5444455555'}) }; fetch('https://a.eztexting.com/v1/contacts', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));Ahora los errores que recibo son: POST https://a.eztexting.com/v1/contacts 403 (403 prohibido) y SyntaxError: final inesperado de entrada
No entiendo por qué se niega a funcionar, o qué en Wordpress lo impide. Por favor, cualquier ayuda sería increíble. Este ha sido un viaje increíblemente frustrante para algo que, en teoría, debería funcionar sin problemas.