Entonces, estoy tratando de llamar a una API de descanso usando la publicación ajax. La respuesta contiene el código de estado y el cuerpo de la respuesta que están en JSON. Cuando pruebo esto en swagger, funciona.
Cuando intento esto en JavaScript o JQuery,
const values = { clientId: '9d9d865a-96c6-41ff-9842-89101c8ccc7a' }; $.ajax({ url: "https://-----.-----------.ca/Asset/EstimatedWaitTime", type: "POST", data: values, contentType: "application/json", dataType: "text", beforeSend: function(xhr) { xhr.setRequestHeader('access-control-allow-headers', 'Origin, X-Requested-With, Content-Type, Accept'); success: function(response) {}, error: function(jqXHR, textStatus, errorThrown) { console.log(textStatus, errorThrown); } });Obtuve el siguiente error:
¿Por qué esto no funciona, o qué estoy haciendo mal?
¡Gracias chicos!
Es un error de uso compartido de recursos de origen cruzado (CORS) https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS La mejor manera es su propia API con acceso a recursos web externos. JS (solicitud AJAX) -> Su API -> Recurso web externo -> Su API -> Su página web (respuesta js)