在客户端加载本机插件
loading native addons on client side
是否可以使用 requireJS 或其他模块从客户端 JavaScript 加载本机插件(像在 nodejs 中一样用 C/C++ 编写(?
我正在编写一个nodejs + express应用程序,该应用程序提供加载javascript文件的html文件。我正在使用requireJS并将这些客户端js文件编译到AMD模块中。我可以从nodejs服务器端js脚本加载和调用本机方法,并想知道是否可以从客户端js脚本中执行相同的操作。
不,您不能像这样强制客户端通过浏览器执行本机应用程序。这将呈现一个非常大的安全漏洞,允许任何黑客出现在任何客户端上执行任意暴力代码,这是严格防止的。不过,您可以通过 API 在服务器端执行 C++ 附加组件,这应该可以解决大多数用例。
RequireJS 不是您要实现的目标的驱动因素。加载本机代码的功能完全取决于运行代码的 JavaScript VM 是否允许。 如果 VM 不允许,则 RequireJS 无法添加此功能。
你可以在 Node 中执行此操作,因为 Node 允许这样做。
浏览器对它们允许的内容的限制要多得多。在网页中执行的JavaScript脚本通常无法加载本机代码,因为正如Chris Franklin所解释的那样,这是一个安全漏洞。
获取 C 或 C++库提供的功能以运行浏览器端的一种方法是使用 Emscripten 之类的东西将 C 或 C++ 代码编译为 JavaScript。
相关文章:
- '图片'没有用于本机道具的propType'RCTImageView.overlayColor&
- 在iOS和Android上使用React native时,我还能使用本机第三方lirbraries吗
- javascript函数访问ios本机功能
- 如何在从客户端接收数据时从本机方法触发javascript函数?
- 在浏览器中检测本机或第三方PDF插件
- 将事件发送到javascript文档的react本机模块是否正确
- 将对应用内购买的支持构建为react本机代码
- 如何在Windows上用javascript构建本机应用程序
- 在视图中渲染多个按钮以编程方式进行本机反应
- 在本机挂钩之前加载可安装挂钩
- 如何使用UI Automation JavaScript Reference for iOS appium获取本机应用程
- 控制台中的“function floor(){[本机代码]}”是什么
- 如何将chrome.tabCapture流从js传递到c++PNACL本机代码
- WKWebview-Javascript和;本机代码
- 将回调/函数从本机发送到javascript
- 在填充Int32Array时,Node.JS的性能与本机C++插件相比
- 在客户端加载本机插件
- jQuery Mobile:动态表单创建显示本机控件与jQuery Mobile插件控件
- 为什么视频js endcard插件会在播放器中添加本机控件
- JXCore Cordova=>本机Cordova插件(无法访问Cordova.exec(..))