Apache HttpClient žino slaptažodį, bet vis tiek gauna 407
Suderinkite „Apache HttpClient“ proxy kredencialus su faktiniu proxy maršrutu ir atskirkite autentifikavimo iššūkį nuo nepavykusio prisijungimo.
Teisingas slaptažodis pas teikėją nesukuria atitinkančių kredencialų faktiškai pasirinktam proxy. Pradėkite nuo to galinio taško schemos, prieglobos ir prievado; prieglobos laukas paprastai priima tik prieglobos vardą arba IP, o ne visą URL.
- Perskaitykite visą autentifikavimo mainus. Vienas 407, po kurio sekė priimtas pakartotinis bandymas gali būti įprastas. Prieš laikydami prisijungimą atmestu, įsitikinkite, kad galutinis rezultatas vis dar 407.
- Palyginkite maršrutą ir kredencialų apimtį. Suderinkite faktinį prieglobos/prievado ir kitus laukus, apibrėžtus įdiegtos HttpClient 5 AuthScope. Neteisingas prievadas gali palikti BasicCredentialsProvider be tinkamo įrašo.
- Patikrinkite metodą ir tapatybę. Ar proxy pasiūlė palaikomą metodą? Ar pakartotinis bandymas naudojo lauktą ryšį? Ar operatorius reikalauja domeno kvalifikaciją turinčios paskyros ar kito dokumentuoto formato?
Naudokite įdiegtos pagrindinės versijos API. „HttpClient 4“ autentifikavimo podėlio receptas nepersikelia nepakitęs į 5 versiją. Naudokite operatoriaus paskyros reikalavimus, o ne bandykite savavališkus vartotojo vardo variantus.
Išankstinė autentifikacija yra dar vienas sąmoningas pasirinkimas. Suderinamai schemai ji gali pašalinti vieną ratą, bet pakeičia, kada kredencialai išeina, ir reikia palaikomos apimties. Ji negali būti pirmasis taisymas, kai galinis taškas nesutampa arba metodas nepalaikomas.
Išsaugokite iššūkį sukėlusio proxy tapatybę, metodą, apimties atitikimą ir galutinę būseną redaguotuose diagnostikos duomenyse. Slaptažodis ir neapdoroti pėdsakai su kredencialais tam palyginimui nereikalingi.