Получение ошибки перекрестного происхождения при вызове API из JQuery AJAX

Я получил следующую ошибку при вызове API из AJAX JQuery.

Доступ к XMLHttpRequest по адресу 'https://www.demo.in/rest/employee/mapping/v3/9714620362 'from origin' http://localhost:8191 'заблокирован Политика CORS: ответ на предварительный запрос не проходит проверку контроля доступа: в запрошенном ресурсе отсутствует заголовок Access-Control-Allow-Origin.

У меня нет доступа к изменению кода API. У меня просто вызов API из javascript или JQuery. Я использовал следующий код для вызова REST API, но я не работаю.

$.ajax({
        url: 'https://www.demo.in/rest/employee/mapping/v3/9714620362',
        headers: {
            'Access-Control-Allow-Origin': '*',
            'Content-Type':'application/json'
        },
        method: 'GET',
        dataType: 'json',
        data: '',
        success: function(data){
          console.log('succes: '+data);
        }
      });

person Reema    schedule 26.11.2018    source источник


Ответы (1)


Обновите dataType до "jsonp", и он должен работать.

$.ajax({ url: 'https://www.demo.in/rest/employee/mapping/v3/9714620362', headers: { 'Access-Control-Allow-Origin': '*', 'Content-Type':'application/json' }, method: 'GET', dataType: 'jsonp', data: '', success: function(data){ console.log('succes: '+data); } });

person Alok    schedule 26.11.2018
comment
Блокировка чтения из разных источников (CORB) заблокировала ответ из разных источников demo.in/rest/employee/mapping/v3/ с типом MIME application / json. Подробнее см. chromestatus.com/feature/5629709824032768. - person Reema; 26.11.2018
comment
В этом случае используйте CORS Anywhere CORS Anywhere - это прокси-сервер node.js, который добавляет поддержку CORS. Чтобы использовать API, просто добавьте к URL-адресу URL-адрес API. Чтобы при необходимости разрешить междоменные запросы, используйте следующий фрагмент: https://codeshare.io/5OXOJj - person Alok; 26.11.2018