MIME type (‘application/json’) is not executable, and strict MIME type checking is enabled Code Answer

Hello Developer, Hope you guys are doing great. Today at Tutorial Guruji Official website, we are sharing the answer of MIME type (‘application/json’) is not executable, and strict MIME type checking is enabled without wasting too much if your time.

The question is published on by Tutorial Guruji team.

I am getting the following error:

Refused to execute script from 'https://query1.finance.yahoo.com/v8/finance/chart/%5EBSESN?callback=jQuery34102269614347819202_1588033301698&_=1588033301699' because its MIME type ('application/json') is not executable, and strict MIME type checking is enabled.

My code – (added ?callback=?) at the end of the url:

<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
var sensex =
  'https://query1.finance.yahoo.com/v8/finance/chart/%5EBSESN?callback=?';

jQuery(function ($) {
  $.getJSON(sensex, function (data) {
    console.log(data.chart.result.meta.regularMarketPrice);
    var sensex_value = data.chart.result.meta.regularMarketPrice;
    document.getElementById('sensex_value').innerHTML = String(sensex_value);
  });
});

API response looks like:

{
    "chart": {
        "result": [
            {
                "meta": {
                    "regularMarketPrice": 31743.08,
                    "chartPreviousClose": 31327.22
                }
            }
        ]
    }
}

Answer

Here’s a working version:

<div id="sensex_value"></div>
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js"></script>
<script>
  var sensex =
    'http://www.whateverorigin.org/get?url=' +
    encodeURIComponent(
      'https://query1.finance.yahoo.com/v8/finance/chart/^BSESN'
    ) +
    '&callback=?';

  jQuery(function ($) {
    $.getJSON(sensex, function (data) {
      console.log(data.contents.chart.result[0].meta.regularMarketPrice);
      var sensex_value = data.contents.chart.result[0].meta.regularMarketPrice;
      document.getElementById('sensex_value').innerHTML = String(sensex_value);
    });
  });
</script>

Notable changes:

  • data.contents.chart.result[0].meta.regularMarketPrice is the correct path
  • I’m using whateverorigin.org to disable CORS. IMPORTANT: you shouldn’t use it in production because websites like this are not reliable, instead, you should create your own backend API that would make requests to yahoo.

Everything else you got right.

We are here to answer your question about MIME type (‘application/json’) is not executable, and strict MIME type checking is enabled - If you find the proper solution, please don't forgot to share this with your team members.

Related Posts

Tutorial Guruji