javascript - JSONP 和 Google map 方向 API

标签 javascript jquery ajax json google-maps

我正在尝试使用 jquery $.ajax 访问 Google map 路线 API。

我可以在我的开发工具中看到 XHR 请求已完成,但我认为 jquery Ajax 处理 JSON.parse 的方式存在问题。

这是我的代码:

http://codepen.io/jrdnndtsch/pen/Byrxxo

$.ajax({
  url:'https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&&callback=?&sensor=false',
  type: 'GET',
  dataType: 'jsonp',
  success: function(data){
    console.log("it worked");
    console.log(data);
  }
});

所以,URL 是正确的 - 我什至可以在开发工具中看到它的数据,但我收到此错误:

Uncaught SyntaxError: Unexpected token :

我已经用谷歌搜索了我的大脑,真的需要一些关于下一步该去哪里的指导。有什么帮助吗?

最佳答案

看起来 URL 正在根据您发送的内容进行修改,以在末尾添加“:2”,这是错误的来源,而不是返回的 JSON。但不知道为什么会发生这种情况。我知道这不是真正的答案,但它至少回答了为什么会发生该错误。

编辑:

我认为你需要一个API key 来以你编写代码的方式接受json,否则你会遇到跨域问题

$.ajax({
  url:'https://maps.googleapis.com/maps/api/directions/json?origin=Toronto&destination=Montreal&&callback=?&sensor=false&key=YOUR-API-KEY',
  type: 'GET',
  dataType: 'json'
})
.done(function(data){
    console.log("it worked");
    console.log(data);
});

关于javascript - JSONP 和 Google map 方向 API,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28612058/

相关文章:

javascript - jQuery 淡出问题

javascript - 有没有办法在 javascript 函数之前引用输入元素而不使用其 ID?

jquery - 如何在 @Ajax.ActionLink 路由值对象中获取 jQuery 选择器结果?

javascript - Ajax post发送嵌套数组,未定义

javascript - 使用 Ajax 将 Javascript 变量提交到另一个 PHP 文件

javascript - 最新 JQGrid 中的排序问题

javascript - D3.js 没有得到 y 轴值

c# - 包含类别和子类别的下拉列表

javascript - 如何循环遍历 React 组件中数组内对象的属性?

javascript - 如果我喜欢将简单的脚本(如 java 脚本)包装为低级别(如 c++),我需要做什么?