WinHTTP 407-ഉം 401-ഉം ഇടയിൽ മാറുമ്പോൾ
തിരഞ്ഞെടുത്ത പ്രോക്സി പ്രമാണീകരണ അവസ്ഥ നിലനിർത്തി വീണ്ടും ശ്രമിക്കുന്നതിന് മുൻപ് അത് വീണ്ടും പ്രയോഗിക്കുക, ലക്ഷ്യത്തിന്റെ വേറിട്ട വെല്ലുവിളി പ്രത്യേകം കൈകാര്യം ചെയ്യുക.
ഒരു WinHTTP അഭ്യർത്ഥന പ്രോക്സിയിൽ പ്രമാണീകരിക്കുന്നു, വെബ്സൈറ്റിൽ നിന്ന് 401 ലഭിക്കുന്നു, തുടർന്ന് അടുത്ത അയയ്ക്കലിൽ വീണ്ടും 407 ലഭിക്കുന്നു. പ്രോക്സിക്കും വെബ്സൈറ്റിനും വേറിട്ട പ്രമാണീകരണ അവസ്ഥയുണ്ട്, വീണ്ടും അയയ്ക്കുന്ന പാത രണ്ടും നിലനിർത്തണം.
Microsoft-ന്റെ അടിസ്ഥാന WinHTTP പ്രമാണീകരണ മാതൃക തിരഞ്ഞെടുത്ത പ്രോക്സി സ്കീം ഒരു വേരിയബിളിൽ സൂക്ഷിക്കുന്നു, ആ സ്കീം തിരഞ്ഞെടുത്തതിന് ശേഷം ഓരോ WinHttpSendRequest-നും മുൻപ് പ്രോക്സി അക്കൗണ്ട് വീണ്ടും പ്രയോഗിക്കുന്നു.
- അഭ്യർത്ഥന അയച്ച് പ്രതികരണം പരിശോധിക്കുക.
- 407 ആണെങ്കിൽ, വാഗ്ദാനം ചെയ്യുന്ന സ്കീമുകൾ ചോദിച്ച് തിരഞ്ഞെടുത്ത പ്രോക്സി സ്കീം ഓർക്കുക.
- വീണ്ടും അയയ്ക്കുന്നതിന് മുൻപ്, ആ സ്കീമും അക്കൗണ്ടും ഉപയോഗിച്ച് WINHTTP_AUTH_TARGET_PROXY-ക്കായി WinHttpSetCredentials വിളിക്കുക.
- ലക്ഷ്യത്തിന്റെ 401 ആണെങ്കിൽ, അതിന്റെ സ്കീം നേടി സെർവർ ക്രെഡൻഷ്യലുകൾ സജ്ജമാക്കുക, അടുത്ത അയയ്ക്കലിനായി ഓർത്തുവച്ച പ്രോക്സി അവസ്ഥ നിലനിർത്തുക.
സെർവർ വെല്ലുവിളിക്കോ റീഡയറക്ടിനോ ശേഷമുള്ള വീണ്ടും പ്രമാണീകരണം പ്രോക്സി ക്രെഡൻഷ്യലുകൾ വീണ്ടും പ്രയോഗിക്കാനുള്ള കാരണമായി മാതൃക പ്രത്യേകം എടുത്തുപറയുന്നു. ആദ്യ 407 ശാഖയിൽ മാത്രം കോൾ വെച്ചാൽ മറ്റൊരു വീണ്ടും ശ്രമിക്കുന്ന പാതയ്ക്ക് പ്രതീക്ഷിത ക്രമീകരണം ലഭിച്ചേക്കില്ല.
ഓരോ API ഫലവും പരിശോധിക്കുക, ആവർത്തിച്ചുള്ള പരാജയങ്ങൾ പരിധിക്കുള്ളിൽ നിർത്തുക. Microsoft-ന്റെ ചുരുക്ക മാതൃക മുൻ അവസ്ഥ ട്രാക്ക് ചെയ്യുന്നു, എന്നാൽ ഉൽപ്പാദന പുനഃശ്രമ നയം ആവർത്തിച്ച് മാറുന്ന ക്രമവും തിരിച്ചറിയണം.
പരാജയത്തിന് ശേഷം ഉപയോക്താവ് പകരം അക്കൗണ്ട് നൽകിയാൽ, ആ വീണ്ടും അയയ്ക്കുന്ന പാത ഉപയോഗിക്കുന്ന മൂല്യങ്ങൾ പുതുക്കുക. WinHttpSetCredentials അഭ്യർത്ഥനാധിഷ്ഠിതമാണ്; എല്ലാ ഭാവി അഭ്യർത്ഥനകൾക്കുമായി ഉള്ളടക്കം മാറ്റിസ്ഥാപിക്കുന്ന പ്രോസസ്സ്-വ്യാപക പാസ്വേർഡ് സ്റ്റോർ അല്ല ഇത്.