Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How to fix the "set the request's mode to 'no-cors'" error?

I am currently using yahoo weather api to fetch weather data. I am getting below error. Please help.

Access to fetch at 'https://weather-ydn-yql.media.yahoo.com/forecastrss?location=sunnyvale,ca&format=json' from origin 'http://localhost:3000' has been blocked by CORS policy: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled.

I have tried to do google, but none of solution worked for me

like image 951
Neel Shah Avatar asked Jan 22 '19 05:01

Neel Shah


Video Answer


2 Answers

You can set the request mode to 'no-cors' like so:

fetch(url, {
    mode: "no-cors",
    ...
})

But, as goto1 described in the comment below, it will usually not be the solution you are looking for (see his comment on how to properly work with CORS).

like image 99
yagiro Avatar answered Sep 21 '22 08:09

yagiro


No 'Access-Control-Allow-Origin' header is present on the requested resource. If an opaque response serves your needs, set the request's mode to 'no-cors' to fetch the resource with CORS disabled

So, First of all you have to change your CORS from browser : Here is the Link of that , download it and it will install by it self.

visit:https://chrome.google.com/webstore/detail/moesif-origin-cors-change/digfbfaphojjndkpccljibejjbppifbc?hl=en-US

Name : Moesif Origin & CORS Changer

NOTE: Make sure it turns ON while you running your page.

like image 22
Nishith Darji Avatar answered Sep 18 '22 08:09

Nishith Darji