cef对本地web资源打包加密

Posted Redrain

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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是需要重定向的,也可以设置重定向的位置

 

Redrain

QQ:491646717

2018.8.7

以上是关于cef对本地web资源打包加密的主要内容,如果未能解决你的问题,请参考以下文章

使用CEF类库处理HTTP请求

使用CEF类库处理HTTP请求

ios:对本地资源文件的编辑不会被复制到设备

Web前端项目的跨平台桌面客户端打包方案之——CEF框架

Web前端项目的跨平台桌面客户端打包方案之——CEF框架

unity3d 资源打包加密