javascript - 如何解决 Google API 中的 CORS 问题?

标签 javascript jquery json google-api cors

我正在开发一个应用程序,在该应用程序中,我必须使用 Google 的海拔 API 获取某些点的海拔高度,但我陷入了臭名昭著的 CORS 问题。

var elevationUrl = 'https://maps.googleapis.com/maps/api/elevation/json?locations=39.7391536,-104.9847034&key=AIzaSyAgXFgUVR4Nia7pegX_0hcz0aNevCKAa58';

$.ajax({
    url: elevationUrl,
    type: 'GET',
    // dataType: 'JSONP',
    success: function(){
    }
});

对于初学者,我只是尝试查询一个不动点。执行此操作时,我会在浏览器的控制台中收到 CORS 警报。

当我尝试 dataType: 'JSONP' 时,它起作用了,我从 API 得到了响应,但我的浏览器提示响应中有错误,而实际上没有。基本上,我试图将 JSON 解析为 JSONP,这就是我在响应中收到语法错误的原因。

解决这个问题的方法是什么?如何通过 AJAX 调用查询 Elevation API?

最佳答案

如果您的网站有后端 api,您可以创建简单的端点以传递到 google api 并在服务器上执行 google 结果,其中 CORS header 无关紧要。 还让您受益于拥有更好的缓存系统。

关于javascript - 如何解决 Google API 中的 CORS 问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31404834/

相关文章:

javascript - 使用 React,如何绑定(bind)到用户的剪贴板粘贴事件和解析数据?

javascript - 在电子表格中可视化嵌套的 JSON 对象

ios - 我们可以使用纯文本(无 JSON)发送推送通知负载吗?

javascript - iframe 不触发 resize 事件

javascript - 有条件工作的按钮

javascript - 电话号码的正则表达式为 10 位数字并允许 "-"(Javascript)

java - 无法访问 Servlet 中的 AJAX 请求参数

jquery - 如何在jquery的类中访问带有句点的div

php - jquery 时事通讯提交 - 加载消息

javascript - 访问本地存储中列表的元素