Openweathermap API on Githubpages(Githubages上的OpenWeatherMap API)
问题描述
我有一个我完成的项目,当你将它上传到Github页面时,它不起作用。它不会引入任何脚本、外部链接的字体和API数据。该接口只支持HTTP,Github Pages只支持HTTPS。有什么方法可以在不更改API的情况下绕过它吗? 接口为OpenWeatherMap 数据-lang="js"数据-隐藏="假"数据-控制台="真"数据-巴贝尔="假">
$(document).ready(function(){
var temp = $('.temperature');
var APIKEY = ';
var loc = $('#search').val();
function updateByCity(loc){
var url = "http://api.openweathermap.org/data/2.5/weather?q=" + loc + "&APPID=" + APIKEY;
sendRequest(url);
}
function k2f(k){
return Math.round(k*(9/5)-459.67);
}
function ascii(a){
return String.fromCharCode(a);
}
$('.enter').click(function(event){
event.preventDefault();
var loc = $('#search').val();
var url = "http://api.openweathermap.org/data/2.5/weather?q=" + loc + "&APPID=" + APIKEY;
console.log(url);
var xmlhttp = new XMLHttpRequest ();
xmlhttp.onreadystatechange = function(){
var url = "http://api.openweathermap.org/data/2.5/weather?q=" + loc + "&APPID=" + APIKEY;
console.log("lol");
var data = JSON.parse(xmlhttp.responseText);
var datatext = data.id;
var name = data.name;
var locname = name;
var temptext = k2f(data.main.temp) + ascii(176) + "F";
console.log(temp);
console.log(url);
$('.temperature').text(temptext);
$('.city').text(name);
};
xmlhttp.open("GET", url, true);
xmlhttp.send();
});
推荐答案
否,没有简单的方法可以绕过此限制,因为这对您网站的安全性和完整性很重要。如果您通过未加密连接从HTTPS加密页访问资源,用户将始终看到安全警告。
您可以设置一个代理,该代理通过HTTP访问API并通过HTTPS将调用传递给浏览器。请注意,这可能会在开发工作方面造成相当大的开销。
最简单的解决方案可能是切换到其他天气数据提供程序considering that HTTPS encryption by default may be a good idea。
这篇关于Githubages上的OpenWeatherMap API的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持编程学习网!
本文标题为:Githubages上的OpenWeatherMap API


基础教程推荐
- Karma-Jasmine:如何正确监视 Modal? 2022-01-01
- 角度Apollo设置WatchQuery结果为可用变量 2022-01-01
- 当用户滚动离开时如何暂停 youtube 嵌入 2022-01-01
- 在for循环中使用setTimeout 2022-01-01
- 动态更新多个选择框 2022-01-01
- 有没有办法使用OpenLayers更改OpenStreetMap中某些要素 2022-09-06
- 悬停时滑动输入并停留几秒钟 2022-01-01
- 在 JS 中获取客户端时区(不是 GMT 偏移量) 2022-01-01
- 我什么时候应该在导入时使用方括号 2022-01-01
- 响应更改 div 大小保持纵横比 2022-01-01