@HandleX

В хроме ошибка «Refused to execute script its MIME type ('text/html') is not executable». JQuery JSONP больше не работает?

Раньше, чтобы обратиться на клиенте к стороннему сервису по его API, юзал JQuery JSONP сахар:
const srcURL = 'https://xxx.xx/api/rur';
		$.ajax({

			url: srcURL,
			async: false,
			jsonp: "callback",
			dataType: "jsonp",
			success: function( response )
			{ и так далее


Сейчас в Хроме вылазит ошибка: "Refused to execute script from <...> because its MIME type ('text/html') is not executable, and strict MIME type checking is enabled".

В самом деле, если посмотреть ответ сервера, там будут заголовки Content-Type: text/html и X-Content-Type-Options: nosniff, что заставляет браузер отказаться выполнить/распарсить JSON.

Как такое возможно обойти? Доступа к серверу со сторонним API не имею, изменить его заголовки нельзя.
Спасибо за внимание.
  • Вопрос задан
  • 8112 просмотров
Пригласить эксперта
Ответы на вопрос 1
@totosarg
Проверял? Проверял. Работает? Работает. Не трогай!
Если сервер отдает JSON a не JSONP, то просто уберите dataType: "jsonp".
JSONP != JSON.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы