SDK ArcGIS Enterprise incluye varias tecnologías adicionales para la personalización de servicios SIG que pueden admitir flujos de trabajo o patrones de integración. Con cada uno de estos patrones, los desarrolladores de software Java o .NET pueden escribir código usando SDK ArcGIS Enterprise para ampliar los servicios existentes, crear nuevos patrones o afectar el comportamiento de los servicios existentes.
Las extensiones de objetos de servidor (SOE) se utilizan para agregar nuevos métodos o capacidades (extremos REST) a los servicios existentes. Estas extensiones no afectan a los extremos ni a los métodos existentes de los servicios, por lo que, por lo general, solo pueden ser consumidas por aplicaciones o flujos de trabajo personalizados que conozcan el extremo y puedan invocarlo directamente. Para obtener más información sobre las SOE, consulte ¿Qué es una SOE REST?
Los interceptores de objetos del servidor (SOI) se utilizan para afectar, controlar o ajustar la funcionalidad existente del extremo de un servicio compatible específico. Esto significa que el código SOI se invoca en cada solicitud al servicio, y el desarrollador puede elegir selectivamente sobreescribir una ruta lógica existente, como una solicitud /query o /identify. El código SOI puede actuar tanto sobre la solicitud entrante, ajustando parámetros o entradas, como sobre la respuesta del backend existente del servidor, eliminando atributos, agregando información o realizando otras operaciones. Para obtener más información sobre SOI, incluyendo muestras y guías de codificación, consulte Qué es un SOI.
Los interceptores de servicios son un nuevo patrón de desarrollo que permite el control global de ciertos patrones o tipos de servicio, operando en el nivel REST a nivel de sitio en lugar de sobre un servicio individual. Los interceptores pueden usarse para controlar el comportamiento de un conjunto de servicios, en lugar de aplicar un SOI a cada servicio de forma independiente. Para obtener más información sobre interceptores de servicio y comparaciones con conceptos existentes de SOI, consulte Resumen de interceptores de servicio.
Para fines de integración, estos patrones de extensibilidad proporcionan un método para implementar una integración en un servidor de aplicaciones existente (ArcGIS Server) de una manera que pueda integrarse en otros flujos de trabajo o patrones de ArcGIS.
Las SOE se construyen sobre servicios existentes, por lo que heredan el modelo de autenticación de los servicios federados en una implementación de ArcGIS Enterprise. Los patrones de desarrollo .NET o Java pueden haber establecido bibliotecas o herramientas para trabajar con un dataset o sistema remoto, por lo que crear un nuevo extremo de servicio web usando una SOE puede ser un camino más fácil hacia la integración que alojar y construir un servicio independiente.
Las SOI funcionan con los extremos existentes, como una solicitud /query. Esto permite interceptar una consulta y luego se puede realizar cualquier acción deseada sobre la entrada de la consulta o el conjunto de resultados, como unir datos de un sistema existente o filtrar los resultados basados en una consulta a un extremo diferente. Estos pasos introducen latencia en cada solicitud y deben diseñarse cuidadosamente para evitar una degradación significativa del rendimiento.
Las aplicaciones o servicios de ArcGIS Online que interactúan con servicios de ArcGIS Enterprise pueden convertirse en consumidores de SOI e interceptores de servicios al incorporar esas capas en una experiencia de cartografía web. Lo mismo ocurre con ArcGIS Pro, que es un cliente compatible con estos tipos de servicio y puede utilizarlos para fines de visualización y cartografía, como fuentes para herramientas de geoprocesamiento o para impresión, manteniendo toda la lógica de los SOI o de los interceptores de servicios. Por lo general, las aplicaciones personalizadas diseñadas para trabajar con estos nuevos extremos específicos de cada caso de uso consumen las SOE.
| Funcionalidad | ArcGIS Online | ArcGIS Enterprise | ArcGIS Location Platform | ArcGIS Pro |
|---|---|---|---|---|
| SOE y SOI | N/A |
Compatibilidad completa Compatibilidad parcial
Antes de emprender el desarrollo de un SOE, SOI o interceptor de servicios, consulte la documentación de ArcGIS Enterprise SDK, en concreto, la filosofía de diseño de ArcGIS Enterprise SDK, que proporciona orientación útil y contexto sobre estos patrones de desarrollo. Consulte las mejores prácticas y recomendaciones para el desarrollo de SOE en el tema de documentación Estrategias para crear SOE REST.