如何让Geolocation API在Dartium中运行?

时间:2013-12-29 11:18:31

标签: dart dart-html

我正在尝试使用Geolocation API在Dartium浏览器中进行测试。特别是我尝试做以下

window.navigator
  .geolocation.getCurrentPosition()
    ..then((pos) {

      window.alert(pos.toString());
    })
    ..catchError((PositionError error) {
      window.alert("Error code: ${error.code}, Error message: ${error.message}");
    })
    ..whenComplete(() => window.alert("complete"))
    ;

忽略我在这里使用window.alert的事实,我得到的是一个错误消息,出现以下消息“错误代码:2,错误消息:网络位置提供程序位于'https://www.googleapis.com/':返回错误代码400 。“

但是,当我使用“pub serve”时,相同的代码在Google Chrome中有效。它也适用于Firefox。我如何克服这个错误,让它在Dartium中工作?它甚至可能吗?

更新

我看了403错误并尝试使用此页面http://www.chromium.org/developers/how-tos/api-keys上指定的修复程序,当我第一次尝试此操作时,我获得了凭据并设置错误,我收到了403错误,但是一次已解决,已启用所有API,以及

的环境设置
GOOGLE_API_KEY
GOOGLE_DEFAULT_CLIENT_ID
GOOGLE_DEFAULT_CLIENT_SECRET

我回到“网络位置提供商'https://www.googleapis.com/':返回错误代码400.”,所以我得出结论它不是同一个问题。虽然如果有人能证明我错了,我会很高兴。

进一步更新

这是一个错误。我在下面回答了我自己的问题。

2 个答案:

答案 0 :(得分:2)

也许你遇到了这个问题

Geolocation giving 403 error

可以通过为Dartium提供Google API密钥来修复

答案 1 :(得分:0)

这是一个错误。

我在https://groups.google.com/a/dartlang.org/forum/#!topic/web/UMJHJlQH7wc上发布了这个问题,Seth Ladd让我打开一个错误。

我为此打开了一个错误https://code.google.com/p/dart/issues/detail?id=15866。希望这很快就会得到解决。