【问题标题】:How do I get Geolocation API to work in Dartium?如何让 Geolocation API 在 Dartium 中工作?
【发布时间】:2014-01-16 10:57:22
【问题描述】:

我正在尝试使用 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 中运行。它也适用于火狐。我该如何克服这个错误,并让它在 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。”,所以我断定这不是同一个问题。虽然如果有人能证明我错了,我会很高兴。

进一步更新

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

【问题讨论】:

    标签: dart dart-html


    【解决方案1】:

    也许你遇到了这个问题

    Geolocation giving 403 error

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

    【讨论】:

    • 我将如何在 DartEditor 中执行此操作,我是否会执行类似的操作,假设我使用 bash 启动 DartEditor,导出 GOOGLE_API_KEY=aaaaaaaaaa\n GOOGLE_DEFAULT_CLIENT_ID=1111111.apps.googleusercontent.com\n export GOOGLE_DEFAULT_CLIENT_SECRET=ccccc 还是我必须自己为 Dartium 编译整个代码库并使用您提供的链接中描述的那些设置来设置 conf 文件???
    • 实际上,我尝试按照此页面 chromium.org/developers/how-tos/api-keys 的说明进行操作,当我获取凭据并设置错误时,我收到了 403 错误,但是一旦按照说明进行设置,我又回到了400错误。所以我不认为这是同一个问题
    • 我支持你,因为你允许我消除 403 错误作为我的问题的原因。谢谢
    【解决方案2】:

    这是一个错误。

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

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

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2016-08-26
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-07-14
      相关资源
      最近更新 更多