A partir de ArcGIS Enterprise 11.0, puede agregar widgets personalizados Experience Builder a un portal. Esto significa que puedes elegir widgets personalizados en el entorno del builder cuando crees una aplicación. Antes de usar un widget personalizado, debe alojarlo en un servidor web y estar registrado en un portal. Por motivos de seguridad, solo los administradores del portal pueden registrar widgets personalizados. Los widgets personalizados que compartes públicamente se pueden utilizar en aplicaciones públicas para el acceso de usuarios anónimos.
Nota:
Después de cambiar a la versión ArcGIS Enterprise 11.1, si encuentra que el idioma localizado de su widget personalizado no funciona, compruebe si la primera línea del archivo de idioma localizado es define({. Si es así, debe actualizar el archivo de la siguiente manera:
Código anterior Nuevo códigodefine({
// strings
})
System.register([], function (_export) {return {execute: function () {_export({
// strings
})}}});
Alojar un widget personalizado en un servidor web
Alojar un widget personalizado en un servidor web no es distinto de alojar cualquier aplicación web. Debes instalar y configurar un servidor web. Los servidores web comunes incluyen IIS y Apache HTTP Server.
Para alojar widgets personalizados en un servidor web, siga estos pasos:
- Habilite el acceso anónimo al directorio virtual que aloja sus widgets.
Se debe poder acceder de forma anónima a la ubicación de alojamiento.
- Habilite HTTPS.
Habilite el acceso HTTPS en su servidor web para evitar crear contenido mixto. Experience Builder no permite contenido activo mixto provocado al cargar HTTP en una conexión HTTPS. Además, su servidor debe tener un certificado SSL válido emitido por una entidad de certificación para establecer la conexión HTTPS.
- Habilite el uso compartido de recursos de distinto origen (CORS).
Experience Builder se ejecuta bajo el dominio de su portal, que puede ser diferente del dominio del servidor web que aloja su widget personalizado. Necesita habilitar CORS en el servidor web para permitir el acceso desde su portal.
- Agregue un controlador JSON a su servidor web.
Cada widget está formado por un archivo de manifiesto de JSON que describe las propiedades del widget. Algunos servidores web no reconocen la extensión del archivo JSON de forma predeterminada. En estos casos, debe agregarlo a su servidor como un nuevo tipo de MIME, en el nivel de la aplicación o en otro superior. El tipo de MIME debe tener .json como extensión de archivo y application/json como tipo de MIME.
- Compile el widget personalizado.
Para poder alojar un widget personalizado, debe compilarlo. Debe copiar el widget personalizado en el directorio arcgis-experience-builder/client/your-extension/widgets. A continuación, deberá ejecutar npm run build:prod bajo el directorio del cliente de . Una vez hecho esto, el widget compilado se muestra en el directorio client/dist-prod/widgets.
- Implemente el widget personalizado en su servidor web.
Puede copiar la carpeta client/dist-prod/widget/ en el servidor web. Después de la implementación, deberá obtener la ruta de la dirección URL de acceso al archivo de manifiesto de su widget. personalizado. Un ejemplo de una ruta de dirección URL de un archivo de manifiesto es <server.domain.com>/<my widget>/manifest.json.
Registrar un widget personalizado
Debe registrar cada widget personalizado en su portal. Se requieren privilegios de administrador del portal para registrar un widget personalizado.
- En una ventana del navegador, inicie sesión en su portal.
- Haga clic en la pestaña Mi contenido de la página de contenido.
- Haga clic en Agregar elemento y elija Una aplicación.
- Elija Extensión de aplicación (AppBuilder) y proporcione la dirección URL al archivo de manifiesto.
Un ejemplo de una ruta de dirección URL de un archivo de manifiesto es <server.domain.com>/<my widget>/manifest.json.
- Haga clic en el cuadro Título.
El título del elemento se rellena automáticamente del archivo de manifiesto. También puede editar manualmente el título.
- Agregue etiquetas en el cuadro Etiquetas.
- Haga clic en Agregar elemento.
Su widget personalizado ahora está disponible en la pestaña Mi contenido de la página de contenido como un tipo de extensión de AppBuilder.
Compartir un widget personalizado
Como administrador del portal, puede compartir widgets personalizados con grupos de una organización que necesiten acceder a ellos, con toda la organización o de forma pública, si es necesario.
Precaución:
Una aplicación solo cargará el widget personalizado que esté registrado en la misma organización que los usuarios que tienen permiso para acceder a la aplicación.
En Mi contenido, localice su widget personalizado y compártalo. Cuando abre Experience Builder, el widget personalizado se muestra en el grupo Personalizado en la pestaña Insertar widget.
Precaución:
Si recibe un error 404 cuando cargue el widget personalizado, asegúrese de que el widget no requiere módulos que utilicen el nombre de un paquete de widgets. En su lugar, use una ruta relativa para cargar módulos.
Actualizar un widget personalizado
No puede actualizar un widget personalizado en el portal. Sin embargo, puede actualizar la estructura HTML y el código JavaScript del widget personalizado alojado en el servidor web.