A Basic hitelesítést kínáló HTTP-proxy esetében az OkHttp proxyAuthenticator visszaadhat egy hitelesítő adatokat hordozó kérést. Adjon vissza null, miután egy engedélyezési kísérletet már elutasítottak, ahelyett hogy ugyanazt a választ újra elküldené:

.proxyAuthenticator { _, response ->
    if (response.request.header("Proxy-Authorization") != null) {
        null
    } else {
        response.request.newBuilder()
            .header("Proxy-Authorization",
                    Credentials.basic(proxyUser, proxyPassword))
            .build()
    }
}

Ez a vázlat az alkalmazás titkos konfigurációjából származó fiókértékeket használ. Az őr engedélyezi az első kísérletet, és leállítja az ismételtet. Basic-et valósít meg, nem minden sémát, amelyet egy proxy hirdethet; vizsgálja meg a kihívást, mielőtt ezt a választ választja.

Ha a végeredmény továbbra is 407, hasonlítsa össze a kiválasztott proxyt, a hirdetett sémát és a dokumentált fiókazonosságot. Az elutasított jelszó, a nem támogatott metódus és a helytelen felhasználónév-forma különböző javításokat igényel. Őrizze meg ezeket a megfigyeléseket és a végső állapotot szerkesztett diagnosztikában.

A CONNECT másik visszahívási kontextussal rendelkezik: az OkHttp egy szintetikus, megelőző proxy-hitelesítési kihívást dokumentál az alagút megnyitása előtt. Ezt a kontextust az API szerint kezelje, ahelyett hogy feltételezné, minden visszahívás szokásos célválasz.

A külön authenticator a célkiszolgáló hitelesítésére szolgál. Tartsa hitelesítő adatait elkülönítve a proxy-bejelentkezéstől; egy általános interceptor, amely minden kimenő kérésre proxijelszót tesz, rossz hatókörben küldheti azt.

A történeti jelentések implementációs hibákat is leírnak, beleértve az elutasított proxyválasz törzsének kezelését. Jegyezze fel az OkHttp verzióját és a végső cserét, mielőtt egy jelenlegi hibát régi jelentésnek tulajdonítana. Az újrapróbálkozási döntésnek továbbra is le kell állítania a változatlan hitelesítő adatokkal tett kísérletet, amelynek nincs hasznos új válasza.

Kapcsolódó cikkek