C++ 如何为本机代码库(C/C+;+;)编写自己的Javascript API(客户端)

C++ 如何为本机代码库(C/C+;+;)编写自己的Javascript API(客户端),c++,c,node.js,client-side,C++,C,Node.js,Client Side,我必须为客户端开发一个带有HTML5和Javascript的Web应用程序。但是我需要使用提供客户机本机库(.dll/.so)的函数来用C/C++处理它机器上的一些数据 我喜欢用Javascript编写自己的API来访问本机库,比如define,但这些插件只能从NodeJS(服务器端)访问。 此外,还有一个完善的NPAPI,但似乎谷歌的PPAPI想要取代它:我无法决定其中任何一个 客户端是否有类似于NoDEJS的插件,只允许我关注C++、JavaScript和HTML 5? 谢谢。不是一般意义上

我必须为客户端开发一个带有HTML5和Javascript的Web应用程序。但是我需要使用提供客户机本机库(.dll/.so)的函数来用C/C++处理它机器上的一些数据

我喜欢用Javascript编写自己的API来访问本机库,比如define,但这些插件只能从NodeJS(服务器端)访问。 此外,还有一个完善的NPAPI,但似乎谷歌的PPAPI想要取代它:我无法决定其中任何一个

客户端是否有类似于NoDEJS的插件,只允许我关注C++、JavaScript和HTML 5?


谢谢。

不是一般意义上的。允许使用node.js的插件,因为代码作者和运行代码的人之间存在隐式信任关系。(事实上,他们通常是同一个人。)在网络浏览器中,不存在这样的信任——通过浏览一个网站,你就让编写该网站的人在你的系统上运行一些代码。由于您(可能)并不完全信任它们,因此它们在Javascript中的功能仅限于一组已知的安全操作。加载DLL在这一组中非常少见

正如generalhenry在一篇评论中指出的那样,有些项目喜欢将本机代码编译成Javascript,或者在浏览器中运行沙盒本机代码,但这些技术在功能上仍然受到限制,而且还相当不成熟。最终,您需要接受这样一个事实,即在浏览器中运行的代码将受到限制。

您应该看看@并@