2015-12-01 102 views
-4

有谁知道如何处理这些错误?我是Javascript新手,目前我正在尝试学习esri的一些API。我真的不明白这些错误意味着什么或如何去解决它们。这里是错误:有没有人真的知道如何解决这些错误?

XMLHttpRequest cannot load file://www.arcgis.com/sharing/rest/content/items/b3c3566f3e1c4b6b8035185fba217f54?f=json. Cross origin requests are only supported for protocol schemes: http, data, chrome, chrome-extension, https, chrome-extension-resource. 

q {message: "Unable to load file://www.arcgis.com/sharing/rest/…b3c3566f3e1c4b6b8035185fba217f54?f=json status: 0", response: Object, status: 0, responseText: "", xhr: XMLHttpRequest…} 

这是使它们的代码。

<!doctype html> 
<html> 
    <head> 
     <title>Create a Web Map</title> 
     <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
     <meta http-equiv="X-UA-Compatible" content="IE=edge"> 

     <link rel="stylesheet" type="text/css" href="http://js.arcgis.com/3.14/esri/css/esri.css"> 
     <style> 
      html, body, #mapDiv, .map.container{ 
       padding: 0; 
       margin: 0; 
       height: 100%; 
      } 
     </style> 

     <script>var dojoConfig = { parseOnLoad:true };</script> 
     <!--<script> Access-Control-Allow-Origin: null </script> perhaps this could be part of a solution--> 
     <script src="http://js.arcgis.com/3.14compact/"></script> 
     <script> 
      var map; 
      require([ 
       "esri/map", 
       "esri/arcgis/utils", 
       "dojo/domReady!" 
       ], function(Map, arcgisUtils){ 
       arcgisUtils.createMap("b3c3566f3e1c4b6b8035185fba217f54", "mapDiv").then(function (response) { 
        map = response.map; 
       }); 
      }); 
     </script> 
    </head> 

    <body> 
     <div id="mapDiv"></div> 
    </body> 
</html> 

任何帮助将是伟大的。我不得不说,我完全失去了这一点。

+1

不要在文件协议上运行。了解CORS – epascarello

+0

@Steve浏览器铬/铬? – guest271314

+0

是的它是铬 – Steve

回答

6

看的网址:

file://www.arcgis.com/..... 

AJAX不会在文件系统上运行。 (无论如何,这可能不是一个有效的文件系统路径,它看起来像应该是是一个网站。)它适用于Web服务器。

想必您直接从您的文件系统打开此HTML文件。相反,将其托管在Web服务器(可以是您的本地计算机)上并通过HTTP打开它。

您的AJAX请求可能还有其他问题。也许你没有正确地指定URL(这里没有一个足够完整的例子可以肯定),或者甚至一旦你向Web服务器发出请求,它可能是一个跨域请求。我们不能真正知道。但至少,这必须在Web服务器上运行。

+0

_“AJAX不适用于文件系统。”_?问题处的URL不显示有效,但ajax可以在'file:'协议中使用 – guest271314

+0

如何知道何时使用服务器以及何时使用文件?当我从文件运行它时,类似的一段代码执行时没有错误。 – Steve

相关问题