当我尝试在非安全网站上使用$.get
我得到这个错误(即HTTP,HTTPS不是):如何在HTTP(非安全)服务器上使用jQuery GET?
jquery.min.js:4混合内容:页面的”。 ..'通过HTTPS加载,但请求一个不安全的脚本'http://api.openweathermap.org/data/2.5/weather?lat=50&lon=2?callback=jQuery ...'。此请求已被阻止;内容必须通过HTTPS提供。
我一直在想办法解决这个问题。这个问题是一个固定的问题,因为服务器由OpenWeather.org托管,它是一个不安全的站点(即http,而不是https)。
这是我的请求代码: $.get("https://api.openweathermap.org/data/2.5/weather?lat=" + latitude + "&lon=" + longitude + "&APPID=123456", function(data) { tempC = data.weather.main.temp/10; // OpenWeather API returns Celsius * 10 rain = data.rain["3h"]; clouds = data.clouds.all; });
只需改变请求的URL https://api.openweathermap.org ......不行的,当然。试过了,并没有工作。
我现在唯一能想到的解决方案就是找到另一个可以免费使用的项目天气API,但是我想知道是否仍有使用OpenWeathermap API的方法,因为它是http。很想知道这一点,因为它只是因为它是http而不是https而忽略某些API似乎很浪费。
您能否显示您的请求代码? – JohnnyAW
顺便说一句,你是说,你通过HTTP调用请求,但错误消息清楚地表明,该请求是通过HTTPS发送的 – JohnnyAW
哦,是的,忘记包含我的请求代码。我使用代码编辑了原始帖子。 @JohnnyAW yep,但错误消息指的是我测试代码的JSFiddle。 HTTPS是指JSFiddle网站。 – nickang