esri new Portal(myUrl) returns a dojo error: CancelError "All requests canceled"

esri new Portal(myUrl) returns a dojo error: CancelError "All requests canceled"

Esri ArcGis Javascript API 3.18

我正在发出一个新的 Portal("myUrl") 命令并返回一个错误。

道场错误,"CancelError" "All requests canceled."

这是 api 在新联合门户上的新 https 安装。

我有调用 esri 门户时可用的代码,所以我认为我的代码可能是正确的。那会留下安装配置问题。 到目前为止,我很难过。

我的测试网站与门户位于同一网络服务器上。

这里有一个 link 给 plunkr 的工作代码:

https://plnkr.co/edit/RFlStZbHA5axAD3J2KQt?p=preview

有什么想法吗?

代码如下:

<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">

    <meta name="viewport" content="initial-scale=1, maximum-scale=1,user-scalable=no">
    <title>New Portal</title>

    <link rel="stylesheet" href="http://js.arcgis.com/3.18/esri/css/esri.css">
  </head>
  <body>
    <div id='mainContent'>
      <input id='message' value='initial value' />
    </div>

    <script>var dojoConfig = { parseOnLoad: true };</script>
    <script src="https://js.arcgis.com/3.18/"></script>
    <script>
    dojo.require('esri.arcgis.Portal');
    dojo.require("esri.IdentityManager");
    dojo.require("dojox.lang.aspect");

    var portalUrl = 'https://www.arcgis.com';
    var portal = null;
    var message = document.getElementById('message');

    var init = function() {
      message.setAttribute('value', 'pre new portal');
      portal = new esri.arcgis.Portal(portalUrl);
      message.setAttribute('value', 'past new portal');
      portal.on("error", function(errorMsg) {
         message.setAttribute('value', 'error=' | errorMsg.message);        
      });
      portal.on("load", function (data) {
         message.setAttribute('value', 'success');        
      });
    };

    message.setAttribute('value', 'pre init');
    dojo.ready(init);
    </script>

</body>

</html>

根据此文档更改门户设置使 api 适用于地图。

所有在线示例都使用这个:

var portal = new Portal('www.myurl.com');

我发现使用这个很有效:

var portal = new Portal('www.myurl.com/arcgis');

基本上,由于其中一些可能是由于我没有看到的配置设置,我建议确定 url 被 Portal 对象的内部代码调用,然后尝试越来越长的片段初始 url 直到你获得成功。