Vous utilisez une carte ArcGIS.com qui n'est pas partagée avec tout le monde depuis ArcGIS API for JavaScript?

10

J'aime utiliser ArcGIS.com pour créer une carte avec des couches opérationnelles au-dessus d'une couche de base. Je voudrais que le contenu et la carte soient privés, mais afficher la carte dans une application construite avec l'API JavaScript. J'ai essayé d'utiliser le nouveau IdentityManager pour que l'application ouvre une boîte de dialogue de connexion. Oui, mais j'obtiens: "Nom d'utilisateur / mot de passe invalide. Veuillez réessayer."

entrez la description de l'image ici

Je suis un débutant sur ArcGIS.com et JS, donc j'ai peut-être mélangé quelque chose, quelqu'un sait-il s'il est possible d'accéder à des cartes qui ne sont pas partagées publiquement? Il n'y a aucun problème pour accéder à la carte en utilisant createmap tant que la carte est partagée avec tout le monde.

entrez la description de l'image ici

MathiasWestin
la source

Réponses:

8

Le gestionnaire d'identité doit effectuer un POST pour se connecter afin d'accéder à votre carte Web. Puisque vous accédez à arcgis.com, il s'agit d'une demande interdomaine, vous devez donc le faire via un proxy . Avez-vous configuré un proxy pour votre application?

En regardant les documents, ce n'est pas clair. Nous mettrons à jour notre documentation pour dire que vous devez utiliser un proxy si vous souhaitez utiliser une carte Web privée dans une application que vous hébergez vous-même (si vous ne l'avez pas deviné, je travaille sur l'équipe de l'API JS).

Derek Swingley
la source
Voté et aucun commentaire?
Derek Swingley
Cela me semble une réponse parfaitement raisonnable ....
Stephen Lead
1
Eh bien, c'est Internet ...
Derek Swingley
@ Derek-Swingley J'ai installé et exécuté le proxy ASP.NET. Mais ce serait bien si l'implémentation pouvait obtenir de nouveaux jetons en cas de besoin.
MathiasWestin
@MathiasWestin heureux d'apprendre que vous l'avez fait fonctionner. Le gestionnaire d'identité doit obtenir de nouveaux jetons si nécessaire - une fois que votre application essaie de frapper une ressource avec un jeton expiré, le gestionnaire d'identité doit démarrer et obtenir un nouveau jeton valide.
Derek Swingley