ನ್ಯಾವಿಗೇಶನ್ ಮೊದಲು WebView2 ಪ್ರಾಕ್ಸಿ ಸವಾಲಿಗೆ ಉತ್ತರಿಸಿ
ಯಾವ ಎಂಡ್ಪಾಯಿಂಟ್ ಅವನ್ನು ವಿನಂತಿಸಿದೆ ಎಂದು ಪರಿಶೀಲಿಸಿದ ನಂತರ WebView2 ನ BasicAuthenticationRequested ಈವೆಂಟ್ ಮೂಲಕ ಪ್ರಾಕ್ಸಿ ರುಜುವಾತುಗಳನ್ನು ಒದಗಿಸಿ.
WebView2 ಪ್ರಾಕ್ಸಿ ದೃಢೀಕರಣವನ್ನು BasicAuthenticationRequested ಮೂಲಕ ಒದಗಿಸುತ್ತದೆ. CoreWebView2 ಪ್ರಾರಂಭದ ನಂತರ ಮತ್ತು ಪ್ರಾಕ್ಸಿ ಅಗತ್ಯವಿರುವ ನ್ಯಾವಿಗೇಶನ್ ಪ್ರಾರಂಭಿಸುವ ಮೊದಲು ಹ್ಯಾಂಡ್ಲರ್ ಅನ್ನು ನೋಂದಾಯಿಸಿ.
webView.CoreWebView2.BasicAuthenticationRequested += (_, e) =>
{
if (!Uri.TryCreate(e.Uri, UriKind.Absolute, out var challengeUri)
|| !challengeUri.Host.Equals(proxyHost,
StringComparison.OrdinalIgnoreCase)
|| challengeUri.Port != proxyPort)
{
return;
}
e.Response.UserName = proxyUser;
e.Response.Password = proxyPassword;
};ಅಪ್ಲಿಕೇಶನ್ ಕಾನ್ಫಿಗರ್ ಮಾಡಿದ proxyHost, proxyPort ಮತ್ತು ಖಾತೆಯ ಮೌಲ್ಯಗಳನ್ನು ಒದಗಿಸುತ್ತದೆ. ಪ್ರಾಕ್ಸಿ ಸವಾಲಿಗೆ, ಈವೆಂಟ್ನ Uri ಪ್ರಾಕ್ಸಿ ಸರ್ವರ್ನ URI ಆಗಿದೆ. ಆ ಖಾತೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡುವ ಮೊದಲು ನಿರೀಕ್ಷಿತ ಎಂಡ್ಪಾಯಿಂಟ್ ಪರಿಶೀಲಿಸಿ.
ಅದೇ ಈವೆಂಟ್ ವೆಬ್ಸೈಟ್ ದೃಢೀಕರಣವನ್ನೂ ಪ್ರತಿನಿಧಿಸಬಹುದು. ಪ್ರತಿ ಈವೆಂಟ್ಗೆ ಕಾರ್ಪೊರೇಟ್ ಪ್ರಾಕ್ಸಿ ಪಾಸ್ವರ್ಡ್ ತುಂಬುವ ಬೇಷರತ್ತಾದ ಹ್ಯಾಂಡ್ಲರ್ ಅದನ್ನು ತನ್ನದೇ ಲಾಗಿನ್ ಕೇಳುವ ವೆಬ್ಸೈಟ್ಗೆ ಕಳುಹಿಸಬಹುದು.
ಪ್ರಾಕ್ಸಿ ಎಂಡ್ಪಾಯಿಂಟ್ ಅನ್ನು ಪ್ರತ್ಯೇಕವಾಗಿ ಪರಿಸರದ ಪ್ರಾಕ್ಸಿ ಕಾನ್ಫಿಗರೇಶನ್ ಮೂಲಕ ಆಯ್ಕೆ ಮಾಡಿ. ಈವೆಂಟ್ ಸವಾಲಿಗೆ ಉತ್ತರಿಸುತ್ತದೆ; ಅದು ನೆಟ್ವರ್ಕ್ ಮಾರ್ಗವನ್ನು ಆಯ್ಕೆ ಮಾಡುವುದಿಲ್ಲ. ಅಪ್ಲಿಕೇಶನ್ ದೃಢೀಕರಣವನ್ನು ನಿರಾಕರಿಸಿದರೆ, ಅದು e.Cancel ಅನ್ನು ಹೊಂದಿಸಬಹುದು. ಇಲ್ಲದಿದ್ದರೆ ರುಜುವಾತುಗಳನ್ನು ಸೆಟ್ ಮಾಡದಿರುವುದು WebView2 ನ ಡೀಫಾಲ್ಟ್ ಸವಾಲು ಸಂವಾದವನ್ನು ಅನುಮತಿಸುತ್ತದೆ.