Tengo que actualizar la propiedad del perfil en klaviyo con API. así que hice este JS. pero por alguna razón, ¡no funciona conmigo! Esta es una guía API para actualizar la propiedad del perfil. ¡Lo seguí pero mostrando este problema! ¿Alguien podría ayudarme a solucionar este problema? muchas gracias
https://apidocs.klaviyo.com/reference/profiles#update-profile
const options = {method: 'PUT', headers: {'Accept': 'application/json', 'Access-Control-Allow-Origin': '*'}}; fetch('https://a.klaviyo.com/api/v1/person/01FHGADW5PW4SF33JMWPSN9KQX?api_key=pk_d3af8ba75d110725231231ba795f05ffe77fb&$locale=es-US', options) .then(response => response.json()) .then(response => console.log(response)) .catch(err => console.error(err));Además, el resultado de este ajax es el mismo. sigue mostrando el mismo problema. Me gustaría obtener información de perfil! El primero es actualizar el perfil, el segundo es obtener información del perfil. ¡pero no todo funciona! ¡muy triste!
var $email = '1919@gmail.com'; $.ajax({ type: 'POST', url: `https://a.klaviyo.com/api/v2/people/search?api_key=pk_d3af8ba75d110725231123ba795f05ffe77fb&email=${$email}`, success: function(res){ console.log(res); } });El encabezado de control de acceso debe colocarse en el servidor, no en el cliente. Si no controlas el servidor, no hay nada que puedas hacer al respecto.
Poner su clave privada en un navegador es una idea terrible. Permite que CUALQUIER visitante de su sitio web pueda acceder a toda su API de administración.
Klaviyo explícitamente no admite CORS en las solicitudes de API exactamente por este motivo. Vea la respuesta de Klaviyo a una pregunta similar aquí. https://community.klaviyo.com/apis-40/does-klaviyo-api-support-cors-requests-704?postid=2253#post2253
La forma correcta de hacer esto es hacer que un servidor que usted controle realice las solicitudes a la API de Klaviyo. Puede realizar solicitudes a su servidor desde el JS.