2016-12-06 1 views
0

API Javascript Esri ArcGis 3,18esri nouveau portail (myurl) renvoie une erreur de dojo: CancelError "Toutes les demandes annulées"

je lance une nouvelle commande Portal (le "myurl") et revenir une erreur.

Il est une erreur de dojo, "CancelError" "Toutes les demandes annulées".

Il est une nouvelle installation https de l'api sur un nouveau portail fédéré.

J'ai le code qui fonctionne lors de l'appel du portail esri donc je pense que mon code est probablement correct. Cela laisserait un problème de configuration de l'installation. Jusqu'à présent, je suis perplexe.

Mon test site est sur le même serveur Web que le portail.

Voici un lien vers le plunkr avec le code de travail:

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

Toutes les idées?

Voici le code:

<!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> 
+0

Ok, quelques progrès. Cela a été utile pour configurer l'API correctement afin que je puisse créer un nouvel objet Map et le charger. http://support.esri.com/technical-article/000011974 je savais sur la modification des fichiers javascript dans le api, mais pas les paramètres du portail. Impossible de créer un objet Portal. –

+0

Voici un symptôme supplémentaire: Si je veux accéder au portail en tant qu'utilisateur humain, je navigue dans mon navigateur: https://www.myurl.com/arcgis/home quand je crée un nouveau portail objet en javascript, j'utilise soit: https://www.myurl.com ou https://www.myurl.com/arcgis/home Je vois le code esri émet une demande d'obtenir: https: // www .myurl.com/sharing/rest/portals/self Quelqu'un at-il une idée de l'origine de "sharing/rest/portals/self"? –

Répondre

1

Modification des paramètres du portail par ce document ont fait le travail api pour les cartes.

Tous les exemples montrent en ligne en utilisant ceci:

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

Je trouve que l'utilisation de cela a fonctionné:

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

En fait, étant donné que certains de cela peut être dû aux paramètres de configuration, je ne l'ai pas vu , Je recommanderais de déterminer quelle URL est appelée par le code interne de l'objet Portal, puis d'essayer des fragments de plus en plus longs de l'URL initiale jusqu'à ce que vous ayez du succès.