У меня есть приложение Cefsharp, которое имеет HTML-страницы с Javascript.Js делает вызовы API, что происходит нормально, если я открываю приложение cef в windows, но большинство вызовов API не происходит, когда я открываю то же приложение cef через testcompelete.
При отладке приложения я получаю предупреждение CORS.Я использую CefCustomScheme, в котором указаны путь к корневой папке, имя_схемы и имя хоста.И предоставили те же shemeName и имя хоста в Address в теге wpf: chromiumwebrowse .Если я жестко закодирую путь к корневой папке в привязке к Address Source, он работает нормально даже в testcomplete.
private static CefCustomScheme GetAlmanacScheme(IAppSettings appSettings)
{
try
{
var almanacFolder = appSettings.Settings["ALMANAC_WIDGET_PATH"];
if (string.IsNullOrWhiteSpace(almanacFolder))
{
almanacFolder = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles), "Thermo", "InstConnectAgent", "AlmanacWidget");
}
var factory = new FolderSchemeHandlerFactory(almanacFolder, "thermo", "almanac");
return new CefCustomScheme() { SchemeName = "thermo", SchemeHandlerFactory = factory, IsCorsEnabled = true };
}
catch
{
return null;
}
}
и Источник
private const string WidgetUrl = "thermo://almanac";
public string Source
{
get
{
return WidgetUrl;
}
}