Strategy ONE
Uso de un proxy para el servidor ESRI con un entorno local o basado en la nube
Puede haber circunstancias en las que desee o necesite utilizar un proxy para el servidor ESRI. Por ejemplo, puede que tenga tokens de seguridad que no desee que estén visibles en su servidor ESRI local. O puede que tenga solicitudes que superen el límite de longitud de los localizadores uniformes de recursos (URL) impuestos por el navegador. El uso de un proxy para el servidor ESRI evita el límite de longitud al realizar una solicitud POST en lugar de una solicitud GET. Las solicitudes POST no están limitadas por el máximo de 2048 caracteres porque la información se transfiere en el encabezado y no en la URL.
El proxy consta de un código del lado del servidor que se ejecuta en su servidor web. La aplicación web basada en navegador envía la solicitud al proxy (en su servidor web). A continuación, el proxy reenvía la solicitud al servidor ESRI y retransmite la respuesta del servidor ESRI a su aplicación.
Para utilizar un proxy para el servidor ESRI, siga los pasos de uno de los métodos que se indican a continuación. Puede usar el primer método para configurar un proxy con integración local o basada en la nube; el segundo método solo funciona para la integración local.
Para solucionar problemas, consulte KB484310: compatibilidad con la autenticación básica para el proxy de ESRI.
Uso de un proxy para el servidor ESRI con integración local o en la nube
Entorno J2EE
-
Copiar
esriproxy.jsp
, ubicado debajojsp
que se encuentra en el directorio de instalación de MicroStrategy Web y péguelo en una ubicación accesible. Las instrucciones a continuación asumen que las ha guardado bajo lajsp
en el complemento. -
En el directorio de instalación de MicroStrategy Web, abra
WEB-INF/xml/proxy.xml
. En el<serverUrls>
nodo, añadir<serverUrl>
nodos, indique todas las URL de los mapas para los que desea utilizar un proxy y guarde los cambios.Copiar<serverUrls>
<serverUrl url="services.arcgisonline.com" matchAll="true" />
<serverUrl url="sampleserver1.arcgisonline.com" matchAll="true" />
<serverUrl url="www.arcgis.com" matchAll="true" />
...
<serverUrl url="myserver.mycompany.com" matchAll="true" >
</serverUrls> -
Abrir
mapConfig.xml
en el complemento. -
En el
<ec>
nodo, añadir<proxyURLs>
y<urlPrefixes>
nodos. Esto le indica a la aplicación que use un proxy para las URL del mapa que agregó en<urlPrefixes>
.Si el
alwaysUse
el atributo está establecido en"true"
, siempre se usa un proxy. Si elalwaysUse
el atributo está establecido en"false"
o no está, ESRI decide si utiliza o no un proxy.Si agrega un
<urlPrefix>
nodo, debe añadir un atributo de ID. Este atributo de ID debe ser único y no puede utilizar números enteros del 1 al 13.Copiar<mc>
<ec>
<proxyURLs>
<proxyURL alwaysUse="true">../plugins/ConnectorForESRI/jsp/esriproxy.jsp</proxyURL>
</proxyURLs>
<urlPrefixes>
<urlPrefix id="21">myserver.mycompany.com</urlPrefix>
<urlPrefix id="22">services.arcgis.com</urlPrefix>
<urlPrefix id="23">sampleserver1.arcgisonline.com</urlPrefix>
</urlPrefixes>
...
</ec>
</mc> -
Guarde los cambios y reinicie el servidor de MicroStrategy Web.
Entorno .NET
-
En el directorio de instalación de MicroStrategy Web, bajo la
asp
carpeta, copiaresriproxy.ashx
,proxy.config
yproxy.xsd
. Péguelos en una ubicación accesible bajo la misma carpeta. Las instrucciones a continuación asumen que las ha guardado bajo laasp
en el complemento. -
En el complemento, abra
proxy.config
. Añada las URL de los mapas para los que desee utilizar un proxy y guarde los cambios. En el<serverUrls>
nodo, añadir<serverUrl>
nodos, enumere todas las URL de los mapas para los que desea utilizar un proxy y guarde los cambios.Copiar<serverUrls>
<serverUrl url="services.arcgisonline.com" matchAll="true" />
<serverUrl url="sampleserver1.arcgisonline.com" matchAll="true" />
<serverUrl url="www.arcgis.com" matchAll="true" />
...
<serverUrl url="myserver.mycompany.com" matchAll="true" >
</serverUrls> -
En el complemento, abra
mapConfig.xml
. -
En el
<ec>
nodo, añadir<proxyURLs>
y<urlPrefixes>
nodos. Esto le indica a la aplicación que use un proxy para las URL del mapa que agregó en<urlPrefixes>
.Si el
alwaysUse
el atributo está establecido en"true"
, siempre se usa un proxy. Si elalwaysUse
el atributo está establecido en"false"
o no está, ESRI decide si utiliza o no un proxy.Si agrega un
<urlPrefix>
nodo, debe añadir un atributo de ID. Este atributo de ID debe ser único y no puede utilizar números enteros del 1 al 13.Copiar<mc>
<ec>
<proxyURLs>
<proxyURL alwaysUse="true">../plugins/ConnectorForESRI/asp/esriproxy.ashx</proxyURL>
</proxyURLs>
<urlPrefixes>
<urlPrefix id="21">myserver.mycompany.com</urlPrefix>
<urlPrefix id="22">services.arcgis.com</urlPrefix>
<urlPrefix id="23">sampleserver1.arcgisonline.com</urlPrefix>
</urlPrefixes>
...
</ec>
</mc> -
Guarde los cambios y reinicie el servidor de MicroStrategy Web.
-
Reinicie el servidor de MicroStrategy Web.
Uso de un proxy para el servidor ESRI con integración local
Puede elegir el método anterior o el siguiente para la integración local.
Entorno J2EE
-
En el directorio de instalación de MicroStrategy Web, bajo la
jsp
carpeta, copiaresriproxy.jsp
y péguelo en una ubicación accesible. En las instrucciones siguientes se supone que ha guardado el archivo con lajsp
en el complemento. -
En el directorio de instalación de MicroStrategy Web, abra
WEB-INF/xml/proxy.xml
. En el<serverUrls>
nodo, añadir<serverUrl>
nodos, enumerando todas las URL de los mapas para los que desea utilizar un proxy y guarde los cambios.Copiar<serverUrls>
<serverUrl url="services.arcgisonline.com" matchAll="true" />
<serverUrl url="sampleserver1.arcgisonline.com" matchAll="true" />
<serverUrl url="www.arcgis.com" matchAll="true" />
...
<serverUrl url="myserver.mycompany.com" matchAll="true" >
</serverUrls> -
Abrir
mapConfig.xml
en el complemento. -
En el archivo de configuración de ESRI, en la carpeta
<bm>
nodo, añada unproxyURL
atributo. Esto le indica a la aplicación que use un proxy para este mapa base. En el<ec>
nodo, añada un<urlPrefixes>
para enumerar todas las URL de los mapas para los que desea utilizar un proxy.Copiar<mc>
<ec>
<bm key="default" proxyURL="../plugins/ConnectorForESRI/jsp/esriproxy.jsp">
http://myserver.mycompany.com/ArcGIS/rest/services
</bm>
<urlPrefixes>
<urlPrefix id="21">myserver.mycompany.com</urlPrefix>
<urlPrefix id="22">the URLs to the maps you want to use a proxy for</urlPrefix>
<urlPrefix id="23">services.arcgis.com</urlPrefix>
</urlPrefixes>
...
</ec>
</mc> -
Guarde los cambios y reinicie el servidor de MicroStrategy Web.
Entorno .NET
-
En el directorio de instalación de MicroStrategy Web, bajo la
asp
carpeta, copiaresriproxy.ashx
,proxy.config
yproxy.xsd
. Péguelos en una ubicación accesible bajo la misma carpeta. Las instrucciones a continuación asumen que las ha guardado bajo laasp
en el complemento. -
En el complemento, abra
proxy.config
. Añada las URL de los mapas para los que desee utilizar un proxy y guarde los cambios. En el<serverUrls>
nodo, añadir<serverUrl>
nodos, enumere todas las URL de los mapas para los que desea utilizar un proxy y guarde los cambios.Copiar<serverUrls>
<serverUrl url="services.arcgisonline.com" matchAll="true" />
<serverUrl url="sampleserver1.arcgisonline.com" matchAll="true" />
<serverUrl url="www.arcgis.com" matchAll="true" />
...
<serverUrl url="myserver.mycompany.com" matchAll="true" >
</serverUrls> -
En el complemento, abra
mapConfig.xml
. -
En el archivo de configuración de ESRI, en la carpeta
<bm>
nodo, añada unproxyURL
atributo. Esto le indica a la aplicación que use un proxy para este mapa base. En el<ec>
nodo, añada un<urlPrefixes>
para enumerar todas las URL de los mapas para los que desea utilizar un proxy.Copiar<mc>
<ec>
<bm key="default" proxyURL="../plugins/ConnectorForESRI/asp/esriproxy.ashx">
http://myserver.mycompany.com/ArcGIS/rest/services
</bm>
<urlPrefixes>
<urlPrefix id="21">myserver.mycompany.com</urlPrefix>
<urlPrefix id="22">the URLs to the maps you want to use a proxy for</urlPrefix>
<urlPrefix id="23">services.arcgis.com</urlPrefix>
</urlPrefixes>
...
</ec>
</mc> -
Guarde los cambios y reinicie el servidor de MicroStrategy Web.