Ένα HttpClient του dart:io δέχεται την απόφαση διακομιστή μεσολάβησης μέσω του findProxy. Η συνάρτηση επιστροφής κλήσης επιστρέφει οδηγία τύπου PAC:

import 'dart:io';

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

Χρησιμοποιήστε αυτόν τον πελάτη για τα αιτήματα της εφαρμογής. Η επιστροφή http://proxy.example.net:8080 είναι λάθος μορφή για αυτή τη συνάρτηση· η μορφή PROXY ακολουθούμενη από κεντρικό υπολογιστή και θύρα είναι η υποστηριζόμενη. Για επιτρεπόμενα δημόσια αιτήματα, πάρτε υποψήφιο HTTP από τη λίστα διακομιστών μεσολάβησης HTTP και μορφοποιήστε τον ως αυτή την οδηγία.

Η συνάρτηση λαμβάνει το URI προορισμού, οπότε μπορεί να επιστρέψει DIRECT για σκόπιμη παράκαμψη. Αποτέλεσμα όπως PROXY proxy.example.net:8080; DIRECT επιτρέπει επίσης άμεση εφεδρεία όταν ο διακομιστής δεν μπορεί να χρησιμοποιηθεί. Παραλείψτε το DIRECT όταν αυτή η εφεδρεία δεν είναι επιθυμητή.

Χωρίς συνάρτηση findProxy, αυτό το API χρησιμοποιεί άμεσες συνδέσεις. Εφαρμογές που θέλουν επιλογή βάσει περιβάλλοντος μπορούν να αναθέσουν το HttpClient.findProxyFromEnvironment στη συνάρτηση.

Αυτό ισχύει για κώδικα Flutter που χρησιμοποιεί dart:io σε υποστηριζόμενες εγγενείς πλατφόρμες. Τα αιτήματα του Flutter Web χρησιμοποιούν τις δικτυακές δυνατότητες του προγράμματος περιήγησης και απαιτούν την πολιτική μεσολάβησης του προγράμματος.

Σχετικά άρθρα