2013-01-05 57 views
1

我使用dart的html庫的HttpRequest類相對加載一個json文件。在Dart編輯器中它工作正常。使用的IntelliJ鏢插件與JetBrains公司的Chrome擴展程序,我收到...XMLHttpRequest交叉原點請求在飛鏢與IntelliJ

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時: 「路徑/要/我的/ 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(); 
    } 
} 

回答

0

我不知道爲什麼它工作在一個方面而不是另一個,但基本上如果你不使用http不能只是去GET文件。有關詳情,請參閱這些。不幸的是,我從來沒有使用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 
+0

嘿,我添加了一個裸骨的例子。它看起來對你好嗎? – Tom

+1

我去了你的第二個鏈接。 --disable-web-security – Tom

+1

Shailen,IntelliJ從文件系統中加載Dartium文件,而不是像DartEditor那樣從本地主機Web服務器上加載文件。 –