Skip To Content

Utilizar proxy

Ao desenvolver um aplicativo, você pode precisar utilizar um proxy. O Web AppBuilder suporta o uso de proxy nas seguintes situações:

  • Acessando recursos de domínio cruzado
  • Pedidos que excedem 2048 caracteres
  • Acessando recursos seguros com token baseado na autenticação
  • Logins do aplicativo dOAuth 2.0.
  • Habilitando login
  • Ambos o recurso e a limitação baseados na referência

Por padrão, o aplicativo baixado utiliza o proxy fornecido pelo Portal for ArcGIS. Especifique seu próprio proxy e regras modificando a propriedade httpProxy no arquivo de configuração do aplicativo. A propriedade httpProxy contém os seguintes atributos.

AtributoDescrição

useProxy

Booleano. Opcional. Padrão: verdadeiro. Se falso, todos os pedidos não utilizarão um proxy.

url

String. Opcional. A URL para especificar o local do proxy. Se o pedido não corresponder à qualquer regra de proxy, mas você deve utilizar um proxy, tal como, um pedido de domínio cruzado, então este proxy será utilizado.

alwaysUseProxy

Booleano. Opcional. Especifique se o proxy deve sempre ser ou não utilizado para comunicação de um parâmetro de REST. Padrão: falso. Se o pedido não corresponder a qualquer regra de proxy e não precisar de um proxy, o aplicativo verificará esta propriedade para determinar como utilizar o proxy. Se falso, o pedido não seguirá pelo proxy referenciado pela url. Se verdadeiro, o pedido seguirá pelo proxy referenciado pela url.

regras

Object[]. Opcional. Define o proxy de um conjunto de recursos com o mesmo prefixo de URL. Se a URL do pedido corresponder a uma regra, o pedido roteará pelo proxy. Cada regra tem duas propriedades:

  • urlPrefix-string—Prefixo de URL para recursos que precisam ser acessados pelo proxy fornecido.
  • proxyUrl-string—URL do proxy.

Aviso:

Quando useProxy for falso e um pedido é maior que 2048 caracteres, um POST em vez de um pedido GET é enviado. Também, se o serviço suporta CORS, e pedido de POST pode ser diretamente enviado para o serviço com sucesso. Caso contrário, o pedido de POST falha. Quando useProxy for verdadeiro e um pedido de POST é enviado, se o serviço não suporta CORS, o pedido de POST será enviado pelo proxy automaticamente.

O seguinte demonstra como o proxy funciona em relação aos atributos acima:

  • O aplicativo verifica useProxy.
    • Se falso, todos os pedidos não utilizarão um proxy.
    • Se verdadeiro, o aplicativo verifica rules.
      • Se o pedido corresponder às regras de proxy, o aplicativo utilizará o conjunto proxyUrl nas regras.
      • Se o pedido não corresponder à qualquer regra de proxy, mas tiver que utilizar proxy, tal como um pedido de domínio cruzado, o aplicativo utilizará o proxy referenciado pela url.
      • Se o pedido não corresponder às regras de proxy nem exigir um proxy, o aplicativo verificará alwaysUseProxy mais adiante.
        • Se falso, o pedido não seguirá pelo proxy referenciado pela url.
        • Se verdadeiro, o pedido seguirá pelo proxy referenciado pela url.
Diagrama de proxy

Exemplo:

"httpProxy": {
		"useProxy": true,
		"url": "http://gallery.chn.esri.com/arcgis/sharing/proxy",
		"alwaysUseProxy": false,
		"rules": [{
			"urlPrefix": "http://route.arcgis.com/",
			"proxyUrl": "resource-proxy-1.0/DotNet/proxy.ashx"
		}]
	}

Além disso, a Esri fornece três proxy, cada um direcionado para uma plataforma de servidor lateral específico: ASP.NET, Java/JSP e PHP. Baixe e implante o proxy apropriado para sua plataforma a partir do GitHub. Também, consulte o Utilizando o proxy e Configurando um proxy com Web AppBuilder exemplos da postagem do blog.