Un HttpClient de dart:io accepta la seva decisió de proxy mitjançant findProxy. La funció de retorn retorna una directriu d’estil PAC:

import 'dart:io';

final client = HttpClient()
  ..findProxy = (_) => 'PROXY proxy.example.net:8080';

Feu servir aquest client per a les peticions de l’aplicació. Retornar http://proxy.example.net:8080 és el format incorrecte per a aquesta funció; PROXY seguit de l’amfitrió i el port és la forma admesa. Per a peticions públiques permeses, preneu un candidat HTTP de la llista de proxys HTTP i formatieu-lo com aquesta directriu.

La funció rep l’URI de destinació, així que pot retornar DIRECT per a un salt deliberat. Un resultat com PROXY proxy.example.net:8080; DIRECT també permet un retrocés directe quan el proxy no es pot utilitzar. Ometeu DIRECT quan no vulgueu aquest retrocés.

Sense una funció findProxy, aquesta API utilitza connexions directes. Les aplicacions que volen una selecció basada en l’entorn poden assignar HttpClient.findProxyFromEnvironment a la funció.

Això s’aplica al codi Flutter que fa servir dart:io en plataformes natives admeses. Les peticions de Flutter Web utilitzen les capacitats de xarxa del navegador i requereixen la política de proxy del navegador.

Articles relacionats