Node-CEF (NC.js) – 为你的 CEF 项目搭载上 Node.js 模块
前言
说起来 SAO Utils 也有好几个月没有更新了,你们肯定以为这个找不到工作的死宅肯定进入了 吃饭—睡觉—追番—打游戏 的 NEET 模式对吧?
–没错, 你们还真猜对了。咳咳……
简单来说,这个项目最初的目的就是为了给 SAO Utils 的网页引擎加上适用于 JavaScript 的包管理系统,以及更多的可以让网页挂件开发者使用的系统接口,而无需学习高深的 C艹 或 COM 知识。之后又由于各种各样的原因,这个目的最后以这个 CEF 扩展库 形式实现了,下一个版本的网页引擎插件马上会集成本功能。
其实一开始要我写这篇日志我是拒接的,因为我博客的读者基本都没兴趣看这个,只是因为 Google 索引不到 Github 的项目才在博客写方便索引的。
什么是 Node-CEF ?
Node-CEF 作为 CEF 的扩展库,为你的 CEF3 项目提供 Node.js 底层的 C++ Binding。换句话说,通过使用 Node-CEF,可以使你的 CEF3 应用拥有 Node.js 大部分的功能,当然基本的 `require()` 函数及模块系统也包含在内。
为什么选择 Node-CEF ?
一直以来,Node.js + Web App 的开发模式都被 Node-Webkit(NW.js),Electron 等独立应用开发框架独占,也就是说,如果你希望在自己现有的应用上使用某些 Node.js 特性的话,不得不砍掉整个项目重新使用上述框架重新开发。这样一来就非常尴尬了,工作量大不说,某些特殊的需求还无法满足……而这个项目则是为解决这个问题而诞生了。
当然,把 Node.js 跟 CEF3 的源代码杂交到一起的项目很早就出现了,例如 Cefode 这个。然而,由于这些项目过于繁多的依赖(Node.js 和 CEF3,一个大型一个巨型项目),没有一个强大的开发团队是不太可能维护下去的,所以这个项目也废弃了很长时间。同时,这类合体项目都是基于源码级别的,这意味着用户必须花数小时自己去编译一个 Chromium 级别的项目,或者由项目团队生成各个平台的 Binary……
Node-CEF 则是基于相对稳定的 CEF3 DLL Wrapper API,理论上替换任何版本、任何分支、任何 Chromium 核心的 CEF3 分发库都可以直接支持,而无需对源码做任何修改。可以,这很东方
Node-CEF 能做什么?
- 加载任意兼容 Node.js 的模块;
- 使用 npm 管理及安装包;
- 轻易地增加建模块的 C++ 绑定接口;
- 使用 Chrome DevTools 对模块进行 debugging。
目前可用的 Node.js 内建模块请参见 Github 项目主页。
Node-CEF 目前仅提供 Visual Studio 2005 的编译项目,理论上支持 Windows, Mac, Linux,以及 CEF3 所有分支,不过由于没有时间去测试其他分支和平台,暂时无法提供支持。如果你有这个兴趣或能力,请加入到本项目!
遇到问题?
我发现了 Bug
请在本页留言或在 Github 提交一个 Issue。
我想加入到本项目
请直接在 Github 发起 Pull Request。
妈个鸡,项目不维护,打什么游戏……赶紧继续撸起来 脑残JS 我需要它
什么时候出新的软件
加油!!!!!!!11
告诉我你的steam号呗,我加你好友
23333
GP,能把你的CEF资料给我吗,有关于WebUI部分的吗?谢谢
gp 把你打的游戏介绍一下吧2333333 最近我也进入了NEET模式……但是不知道玩什么
GTA5 d≡ω≡.
233333
还以为是进入现充模式了23333
苦逼的c#程序猿在围观
作为一个计算机学院的大学生,逻辑上可以理解说的什么,键盘上完全不能理解的菜鸡路过。。。
GP君你是不是把href打成了herf
习惯 md 了忘了打 href