在 cefsharp 中跨域



我使用CefSharp来处理2个方案:"http"和"uc"。起初我通过http加载页面。之后,我调用了一个"uc"链接。它发生了错误"跨源请求仅支持 HTTP"。

直到现在,我找不到任何解决方案。如何解决这个问题?

铬嵌入式指南中有一节是关于这个主题的:https://code.google.com/p/chromiumembedded/wiki/GeneralUsage#Request_Handling

您需要注册自定义"uc"架构并设置 "标准" 标志才能使 CORS 正常工作。

或者,您可以为"http"和"customdomain"注册请求处理程序,而不是使用自定义方案 - 您将处理http://customdomain/*的请求,并且 CORS 将像使用 http 一样工作。

例如:

var your_factory = XX;
var settings = new CefSettings();
settings.BrowserSubprocessPath = "CefSharp.BrowserSubprocess.exe";
settings.RegisterScheme(new CefCustomScheme {
    SchemeName = "http",
    SchemeHandlerFactory = your_factory,
    DomainName = "customdomain",
    IsStandard = true
});
Cef.Initialize(settings);

相关内容

  • 没有找到相关文章