Mais

Por que o ArcGIS API para JavaScript local sobre https aciona a solicitação de informações sobre http?

Por que o ArcGIS API para JavaScript local sobre https aciona a solicitação de informações sobre http?


Eu tenho o esri js api 3.14 implantado em um servidor e um aplicativo que pode ser acessado via https.

Agora eu tenho um script de proxy que entrega as solicitações de mapa.

Quando você olha as solicitações da página, pode ver que há UMA solicitação (uma solicitação de informações para a interface restante) que vai diretamente para o internalServer.

O navegador Chrome diz:

Firefox diz:

Eu adicionei a regra de script de proxy assim:

urlUtils.addProxyRule ({urlPrefix: "http: // srvutdemo102 / arcgis / rest / services / utjsc_de / Grundkarte", proxyUrl: "ESRI_proxy.jsp"});

É possível dizer ao js-api para usar o script de proxy para essa solicitação de informações "inicial"?


Se você precisa compartilhar seus serviços em aplicativos que utilizam HTTPS, então é muito melhor configurar o ArcGIS Server para suportá-lo do que depender de um proxy para tentar 'falsificá-lo'.

http://blogs.esri.com/esri/arcgis/2015/03/11/sharing-web-gis-services-always-enable-tls/

Dito isso, a solicitação de informações é uma verificação de suporte a CORS, portanto, se você souber que o servidor já oferece suporte a CORS (ou que não será necessário), pode pular o envio da solicitação ligando para

esriConfig.defaults.io.corsEnabledServers.push ("[server.domain]");

exemplo aqui.


Sua regra de proxy especifica o URL prefixo

http: // srvutdemo102 / arcgis / rest / services / utjsc_de / Grundkarte

mas na minha guia Rede de ferramentas de desenvolvimento do Chrome, a primeira solicitação é para

http: // srvutdemo102 / arcgis / rest / info? f = json

… Que não corresponde ao prefixo. Se você modificar o URL da sua função de proxy parahttp: // srvutdemo102 / arcgis / restAcho que você terá muito mais sucesso.