1

我正在使用 dart 的 html 库的 HttpRequest 类相对加载一个 json 文件。在 Dart 编辑器中它工作正常。使用我收到的带有 JetBrains chrome 扩展的 intelliJ 的 dart 插件...

XMLHttpRequest cannot load file:///C:/project/web/path/to/my/file.json. Cross origin requests are only supported for HTTP.  :0
Exception: Error: NETWORK_ERR: XMLHttpRequest Exception 101
Stack Trace: #0      HttpRequest.send (file:///E:/b/build/slave/dartium-win-full-trunk/build/src/build/Release/obj/global_intermediate/webkit/bindings/dart/dart/html/HttpRequest.dart:33:3)

我正在传递一个相对 url,当检查我看到它的 URL 时:“path/to/my/file.json”

这是裸骨测试。

import 'dart:html';

main(){
  Loader loader = new Loader();
  loader.load("someFile.json");
}

class Loader {
  load(String url) {
    var request = new HttpRequest();
    request.open('GET', url, true);
    request.send();
  }
}
4

1 回答 1

0

我不确定为什么它在一种情况下而不是另一种情况下工作,但GET如果你不使用http. 有关为什么会这样的详细信息,请参阅这些。我从未使用过 IntelliJ,因此很遗憾,我无法谈论该上下文的具体细节。

http://stackoverflow.com/questions/8449716/cross-origin-requests-are-only-supported-for-http-but-its-not-cross-domain
http://stackoverflow.com/questions/3102819/chrome-disable-same-origin-policy
http://stackoverflow.com/questions/10752055/cross-origin-requests-are-only-supported-for-http-error-but-im-loading-a-co
于 2013-01-06T01:23:00.037 回答