cef对本地web资源打包加密

转载请说明原出处,谢谢~~:https://blog.csdn.net/zhuhongshu/article/details/81484159

cef中最简单的打开页面方法是指定一个url或者本地路径。在使用cef开发客户端时,多数情况是写好了web页面,把web资源放到本地来使用。而js文件中很可能会暴露一些接口或者重要数据,为了保护这些数据需要把web资源加密。例如网易云音乐一类的客户端都是这样做的

这个问题其实就是资源重定向的问题,把cef请求的资源重定向到自己解密出来的数据处。资源重定向需要处理cef里面的OnBeforeResourceLoadGetResourceHandler接口

翻了翻cef2623的demo,发现其实cef自身已经有了相关的功能。即CefResourceManager,创建一个CefResourceManager对象,调用AddArchiveProvider方法,可以添加一个加密zip文档作为资源来源。然后在OnBeforeResourceLoadGetResourceHandler接口中调用CefResourceManager对象对应名称的接口,就可以直接使用加密zip中的资源了,很简单

同时CefResourceManager提供了AddDirectoryProvider方法来把某个目录作为资源来源,也可以调用AddProvider来自定义一个资源来源。在调用这些方式时,需要提供一个特征字符串开头的URL。比如http://test/,如果cef正在打开的url是以http://test/开头,则会从对应的资源来源里,去取资源。比如用加密zip的方式,同时尝试打开http://test/demo.html,则会从zip里查找demo.html文件并打开

CefResourceManager还提供了filter功能,可以用于过滤url,来判断那些url是需要重定向的,也可以设置重定向的位置

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
CefSharp是一个基于Chromium的.NET开发框架,用于在C#中嵌入浏览器的功能。要在CefSharp中实现本地视频播放,可以按照以下步骤进行操作: 1. 第一步是在你的C#项目中引入CefSharp的库文件。你可以通过NuGet包管理器来安装CefSharp。 2. 在你的C#代码中,首先创建一个CefSharp ChromiumWebBrowser对象,并将其添加到窗体中的控件容器中。 3. 使用此对象的Load方法加载你的本地HTML页面,该页面将用于播放视频。确保在页面中包含一个video元素,并设置src属性为本地视频文件的路径。 4. 确保你的本地视频文件的路径是正确的,并且可以被你的应用程序访问到。你可以在视频元素中使用绝对路径或相对路径。 5. 当视频元素的src属性被设置为本地视频文件的路径后,使用CefSharp的ExecuteScriptAsync方法执行JavaScript代码来播放视频。你可以使用video对象的play方法来实现。 以下是一个简单的示例代码,展示了如何在CefSharp中实现本地视频播放: ```csharp using CefSharp; using CefSharp.WinForms; using System; using System.Windows.Forms; namespace CefSharpExample { public partial class MainForm : Form { private ChromiumWebBrowser browser; public MainForm() { InitializeComponent(); Cef.Initialize(new CefSettings()); browser = new ChromiumWebBrowser("path/to/your/local/page.html"); containerPanel.Controls.Add(browser); browser.Dock = DockStyle.Fill; } private async void MainForm_Load(object sender, EventArgs e) { await browser.LoadPageAsync(); await browser.ExecuteScriptAsync("document.getElementById('video').play();"); } private void MainForm_FormClosing(object sender, FormClosingEventArgs e) { Cef.Shutdown(); } } } ``` 请确保你的框架和组件版本与示例代码一致,以便正确使用CefSharp来实现本地视频播放。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值