Een HttpClient uit dart:io neemt zijn proxybeslissing via findProxy. De callback geeft een instructie in PAC-stijl terug:

import 'dart:io';

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

Gebruik deze client voor de verzoeken van de applicatie. http://proxy.example.net:8080 teruggeven is het verkeerde formaat voor deze callback; PROXY gevolgd door de host en de poort is de ondersteunde vorm. Neem voor toegestane openbare verzoeken een HTTP-kandidaat uit de HTTP-proxylijst en formatteer die als die instructie.

De callback ontvangt de bestemmings-URI, dus kan DIRECT teruggeven voor een bewuste omleiding. Een resultaat als PROXY proxy.example.net:8080; DIRECT staat ook een directe terugval toe wanneer de proxy niet bruikbaar is. Laat DIRECT weg als die terugval ongewenst is.

Zonder findProxy-functie gebruikt deze API directe verbindingen. Applicaties die een keuze op basis van de omgeving willen, kunnen in plaats daarvan HttpClient.findProxyFromEnvironment aan de callback toewijzen.

Dit geldt voor Flutter-code die dart:io gebruikt op ondersteunde native platforms. Verzoeken van Flutter Web gebruiken de netwerkfaciliteiten van de browser en vereisen het proxybeleid van de browser.

Gerelateerde artikelen