10
respostas

Erro cors

Bom até pouco tempo meu código funcionava perfeitamente no google chrome, então do nada começou dar problema de cors, não entendi o motivo e tentei de tudo e não consegui resolver, então fui para o mozila e estranhei pois no firefox funciona perfeitamente, alguém sabe o motivo que estou dando erro de cors? Agradeço pela atenção desde já.

Failed to load https://api.mercadolibre.com/users/113835960/items/search?status=active&access_token=APP_USR-5901258004946867-040922-12bad0a535ebb3a5b7a168a97290eefe-113831160: The 'Access-Control-Allow-Origin' header has a value 'null' that is not equal to the supplied origin. Origin 'null' is therefore not allowed access.

function buscaIDAnuncioML(){

           var xhr = new XMLHttpRequest();

        xhr.open("GET", "https://api.mercadolibre.com/users/113831160/items/search?status=active&access_token=" + token);        

        xhr.addEventListener("load", function(){
            var resposta = xhr.responseText;
            var array = JSON.parse(resposta);

            var anuncioID = array.results;

        });

        xhr.send();
};
10 respostas

Opa Fábio, muito estranho isso. Só dá problema no Chrome? Nos outros navegadores funciona normal, é isso mesmo?

Putz, o problema é, seria mais facil te ajudar se pudessemos testar, tem alguma forma de acessarmos a URL que da erro no CORS?

Sim, o erro e somente no navegador google chrome, eu removi do windows e instalei novamente e continuou não funcionando. Testei em outro computador o mesmo script e também não funciona somente no google chrome. Edge e Firefox funciona perfeitamente.

Fábio, concordo com o Rafael, se pudéssemos testar seria muito mais fácil. Mas só pra confirmar uma coisa, você está testando localmente? Sob qual protocolo? Tem um servidor rodando o HTTP ou está acessando a página via file mesmo?

Via file mesmo, um exemplo.

function buscaIDAnuncioML(){

           var xhr = new XMLHttpRequest();

        xhr.open("GET", "https://api.mercadolibre.com/sites/MLB/search?nickname=investimentocom");        

        xhr.addEventListener("load", function(){
            var resposta = xhr.responseText;
            var array = JSON.parse(resposta);

            var anuncioID = array.results;

        });

        xhr.send();
};

Se você está abrindo o HTML que executa essa página via file mesmo, tenta colocar ele em um servidor HTTP.

Concordo com Wanderson, tente via HTTP, para facilitar (caso use node) instale o http-server (npm install --g http-server), após instalar, acesse a pasta pelo terminal e execute o comando http-server, ele vai abrir a pasta do seu projeto em um um ip

Fábio, dá um retorno pra gente aqui? A dica do Rafael é até mais prática que a minha. :)

Testa pra gente por favor?

Infelizmente não funcionou, pelo node não funcionou com o http-server, pelo servidor web meu da hostsgator funcionou sim mas ai fica difícil para desenvolver pois toda hora para testar seria necessário da upload.

Failed to load https://bittrex.com/api/v1.1/public/getmarkets: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://192.168.25.43:8080' is therefore not allowed access.

Failed to load https://bittrex.com/api/v1.1/public/getmarkets: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'http://127.0.0.1:8080' is therefore not allowed access.

function buscaGet(){

    var xhr = new XMLHttpRequest();

        xhr.open("GET", "https://bittrex.com/api/v1.1/public/getmarkets");

        xhr.addEventListener("load", function(){
            var resposta = xhr.responseText;
            var array = JSON.parse(resposta);

            console.log(array);

        });

        xhr.send();       
};
buscaGet();

Puxa Fávio, é, você não vai ter muito o que fazer por que o CORS precisa ser liberado pelo servidor.