https://www.freecodecamp.com/challenges/show-the-local-weather
Mostrar as recomendações do desafio do clima local usando a API Open Weather Map. Que funcionou bem até agora. Agora você receberá um erro dizendo "pen.js: 22 Conteúdo misto: A página em [...] foi carregada por HTTPS, mas solicitou um endpoint XMLHttpRequest inseguro ' http://api.openweathermap.org/data/2.5/ weather? lat = 30.281903699999997 & lon = -97.73883819999999 & appid = 41bf32baf1dc0b1bb46d120a3cbdbc57 '. Esta solicitação foi bloqueada; o conteúdo deve ser servido por HTTPS. "
// If relevant, paste all of your challenge code in here
@anthkris isso foi corrigido com # 8141.
As alterações devem chegar ao site principal em alguns dias.
Para contornar o problema, abra a versão http
do link CodePen como em:
http://codepen.io/FreeCodeCamp/full/bELRjV
e não o link https
no desafio.
O link será atualizado assim que as correções chegarem ao site principal.
Mesmo quando abro a versão http do link no Chrome e no Firefox, a chamada http para a API OpenWeather está sendo bloqueada. Já terminei meu projeto de Clima Local, mas não posso enviar o projeto assim no Codepen. O URL funciona bem ao visualizar no Safari. Eu só poderia pensar em enviar este projeto hospedado em meu próprio servidor ou encontrar outra API de clima gratuita que suporte SSL.
@ j7an consulte a discussão em # 7853
ainda bloqueado
@rolandocz tente forecast.io conforme mencionado por @ 149203 aqui: https://github.com/freeCodeCamp/freeCodeCamp/issues/7853#issuecomment -222315358
Ou você pode tentar a solução aqui: https://forum.freecodecamp.com/t/local-weather-api-for-people-stuck-because-of-the-https-request/50274/17?u=j7an
Ainda bloqueado
https://cors-anywhere.herokuapp.com/
Isso funcionou para mim se você colocá-lo antes do URL inicial
Finalmente :)
@isingmoon77 Ya está funcionando bem para mim.
$.getJSON("https://cors-anywhere.herokuapp.com/http://api.openweathermap.org/data/2.5/weather?lat="+lat+"&lon="+lon+"&appid=1c48b076cbce09ca93cfff52b6c839c1",function(json){
// other code goes here
}
@raisedadead codepen é redirecionado automaticamente para a solicitação HTTP para HTTPS, de forma que seu método não funciona.
Você não pode fazer uma solicitação http de um site https. E como você tem que usar https para usar o navigation.geolocation, a melhor coisa a fazer é apenas usar uma API https como darksky .
@raisedadead Acho que este problema pode ser resolvido devido a # 15598
Comentários muito úteis
https://cors-anywhere.herokuapp.com/
Isso funcionou para mim se você colocá-lo antes do URL inicial
Finalmente :)