25 votos

¿Cómo puedo implementar la API de REST de ESRI?

ESRI anunció que están liberando la API REST de ArcGIS como tecnología abierta. Tengo un ISP que ejecuta Sql Server 2008 con IIS7.

¿Alguien sabe de un buen paseo por que ¿cómo puedo escribir C# usando WCF exponer tablas espaciales cumple con una especificación particular (idealmente de ESRI)?

¿Alguien sabe dónde está el módulo de ESRI?

20voto

Ryan Eastabrook Puntos 1374

Parece que ESRI acaba de publicar su resto de GeoServices especificación. Creo que esto es lo que usted puede estar buscando.

8voto

Scott Cowan Puntos 1564

Acabo de utilizar el enlace Jason publicado anteriormente. No me puedo imaginar cuando su libertad, el oficial spec va a ser muy diferente. Era sobre todo un rollo-para arriba-su-mangas, el fuego de Fiddler, golpeó el 10.0 servidores de ejemplo y empezar a cortar lejos en la aplicación. No hay nada eso es imposible, sólo es tedioso con un montón de cuestiones a tener en cuenta. No podemos incluso hacer nuestra 100% compatible, pero que cubre el 85% y todas las api de cliente parece que funciona bastante bien (esa fue la única razón por la que hice esto para empezar)

he aquí una demostración de catálogo (un montón de pequeños errores ahí :) [bFlood - eliminado el antiguo vínculo]

estamos ejecutando en AppEngine (python) y su muy bien junto con las correspondientes estructuras espaciales, pero probablemente se podría hacer en un decente .Net WCF proyecto. No está seguro de cómo íbamos a distribuir a pesar de que

saludos brian

Actualización - 3/8/12 - acabo de ver este post emergente en stackexchange así que pensé que había que actualizar el contenido. Usted puede tener su FeatureService funcionamiento en cuestión de minutos si usted prueba la Arc2Earth Sync beta. el backend funciona con Google Fusion Tables y CartoDB , pero vamos a estar apoyando a otros proveedores muy pronto. Usted no necesita nada excepto ArcView 9.2 o superior...

he aquí un blog que muestra cómo iniciar la recopilación de datos de campo en los minutos mediante el ArcGIS.com mobile: http://www.arc2earth.com/2012/03/arc2earth-sync-live-mobile-data-collection-in-5-minutes/

7voto

t3rse Puntos 5983

La única documentación que conozco para esri API de RESTO es en su ayuda en línea aquí:

http://help.arcgis.com/EN/arcgisserver/10.0/apis/rest/index.html

Este es el escrito más desde la perspectiva de un consumidor de un proveedor, sino que debe ser hackeable.

Hay partes de esta API, que son bastante de propiedad (algunos de los formatos de salida) y la imposibilidad de implementar un proyecto de código abierto, a menos que estas especificaciones de formato también están disponibles.

Así, algunas de las Api de REST no es especialmente Relajante. Por ejemplo, mire la Función de Servicio. Parece ser que hay distintas "estaciones" para añadir/actualizar/eliminar/consulta en lugar de utilizar verbos HTTP estándar para operar sobre los recursos. Este rompecabezas de mí; yo sé que esri tiene algunos bastante gente inteligente hay que entender el RESTO. Mi conjetura es que estas llamadas mapa a algún tipo de interfaz SOAP, y esri consideró que sería más fácil para ellos y sus clientes, si se mantiene la coherencia entre ellos.

Mi opinión? Si solo buscas en el intercambio de datos (no configuración del mapa, metadatos, etc) y no están en un apuro, usted puede ser mejor esperar hasta que Microsoft descubre cómo van a representar tipos de datos espaciales en EDM. Con esto, usted puede fácilmente crear un verdadero Descanso acceso a tus tablas espaciales con OData y probablemente RIA habilitado OData. Esto puede ser pastel en el cielo para todos los que me conocen, aunque.

2voto

Arjun Attam Puntos 82

¿Estás buscando a exponer las tablas espaciales de SQL Server 2008 Espacial? ESRI MapIt no esta ya, y creo que la licencia permite a aquellos con AGS tener acceso a ESRI MapIt.

Algunas pantallas de lo que parece que se puede encontrar en mi blog: http://geo.geek.nz/development/hiding-databases-from-unauthorised-users-when-using-esri-mapit/

No hay necesidad de escribir algo por sí mismo? ;)

Saludos

2voto

Swim Puntos 636

Esto lo he hecho ya en una aplicación. Yo no plenamente la implementación de una api REST, pero lo suficiente para obtener una consulta de la tarea a ejecutar y el formato JSON correctamente. He utilizado ASP .NET MVC para construir mi estación. He intentado hacer esto hace aproximadamente un año con WCF y la salida JSON no se ha formateado en un camino al trabajo. El truco con MVC es asegurarse de que usted tiene un JSONP resultado que le tire la devolución de llamada parámetro de consulta y la correcta jsonp respuesta. Voy a tratar de publicar algo. Usted puede tomar un vistazo a la respuesta aquí:

http://www.ci.austin.tx.us/GIS/TrafficViewer/Home/JsonpIncidents/query?f=json&where=1%3D1&returnGeometry=true&spatialRel=esriSpatialRelIntersects&outFields=*&outSR=4326&callback=dojo.io.secuencia de comandos.jsonp_dojoIoScript2._jsonpCallback

Sin embargo, sólo la devolución de llamada se utiliza el parámetro:

http://www.ci.austin.tx.us/GIS/TrafficViewer/Home/JsonpIncidents?callback=woot

Edit: Aquí es cómo implementar un JSONP resultado en ASP .NET MVC

http://stackoverflow.com/questions/758879/asp-net-mvc-returning-jsonp

Edición #2: Aquí es un ejemplo de código que he hecho rápidamente y poner en dropbox.

http://dl.dropbox.com/u/28924446/EsriGeoServicesExampleMvc3.zip

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X