CefSharp SetProxyAsync: നാവിഗേഷന് മുമ്പ് കാത്തിരിക്കുകയും പരിശോധിക്കുകയും ചെയ്യുക
RequestContext.SetProxyAsync മുൻഗണന CEF-ന്റെ UI ത്രെഡിൽ ഷെഡ്യൂൾ ചെയ്യുന്നു; WinForms/WPF UI ത്രെഡ് സ്വയമേവ ആ ത്രെഡ് അല്ല.
ലക്ഷ്യമിടുന്ന ബ്രൗസറിന് സേവനം നൽകുന്ന ഇനിഷ്യലൈസ് ചെയ്ത അഭ്യർത്ഥന സന്ദർഭം ഉപയോഗിക്കുക:
using System;
using CefSharp;
var result = await requestContext.SetProxyAsync(
"http", "proxy.example", 8080);
if (!result.Success)
{
throw new InvalidOperationException(result.ErrorMessage);
}നാവിഗേഷന് മുമ്പ് പ്രവർത്തനത്തിനായി കാത്തിരുന്ന് പരാജയം കൈകാര്യം ചെയ്യുക. അനുവദനീയമായ പൊതു-സൈറ്റ് പരിശോധനയ്ക്കായി, HTTP പ്രോക്സി ലിസ്റ്റ് HTTP ഹോസ്റ്റ്, പോർട്ട് ആർഗ്യുമെന്റുകൾക്ക് സ്ഥാനാർഥികൾ നൽകുന്നു. SetProxyAsync മുൻഗണന അപ്ഡേറ്റ് CEF UI ത്രെഡിൽ ഷെഡ്യൂൾ ചെയ്യുകയും fixed_servers തിരഞ്ഞെടുക്കുകയും ചെയ്യുന്നു.
ഫലം മുൻഗണന വായനയ്ക്ക് മാത്രമാണെന്ന് റിപ്പോർട്ട് ചെയ്താൽ, കമാൻഡ്-ലൈൻ പ്രോക്സി ഫ്ലാഗുകൾ പരിശോധിക്കുക; അവ ഈ അപ്ഡേറ്റ് തടയാം. വെറുതെ കാത്തിരിക്കുന്നത് നിരസിക്കപ്പെട്ട മാറ്റത്തെ പ്രയോഗിച്ച റൂട്ടാക്കി മാറ്റുന്നില്ല.
നേരിട്ടുള്ള SetPreference കോളിന് ഇപ്പോഴും CEF-ന്റെ UI ത്രെഡ് ആവശ്യമാണ്. സാധാരണ മൾട്ടിത്രെഡഡ് സന്ദേശ-ലൂപ്പ് ക്രമീകരണത്തിൽ, ഹോസ്റ്റ് ആപ്ലിക്കേഷന്റെ WinForms അല്ലെങ്കിൽ WPF UI ത്രെഡ് വേറെ സന്ദർഭമാണ്.
അഭ്യർത്ഥന സന്ദർഭം പങ്കിടുന്ന ബ്രൗസറുകൾ മുൻഗണനയും പങ്കിടുന്നു. ഇത് എൻഡ്പോയിന്റ് തിരഞ്ഞെടുക്കുന്നു; വേറെ ഒരു ഓതന്റിക്കേഷൻ കോൾബാക്ക് ക്രെഡൻഷ്യലുകൾ ഉദ്ദേശിച്ച പ്രോക്സി ചലഞ്ചിൽ പരിമിതപ്പെടുത്തണം.