Firefox中的原生Java / Python / Objective C
Native Java / Python / Objective C in Firefox?
是否可以将Java, Python或Objective C直接与Firefox浏览器集成?特别是做"真实"的本地任务,如写文件或连接到本地数据库,或者更好的是,直接调用系统级代码?
值得注意的是,有一个关于本机代码执行的帖子,有点倾向于windows,在StackOverflow的其他地方:Firefox扩展:本机代码执行?
特别是做"真实的",本机任务,如写文件或连接到本地数据库,或者更好的是,直接调用系统级代码?
你不需要额外的语言,Firefox扩展已经可以做到了:
- 写文件
- 连接本地SQLite数据库
- 直接调用系统库
我建议不要尝试用JavaScript以外的任何语言编写扩展:虽然有几种可能性,但它们会产生比它们值得的更多的麻烦。如果有的话,你可以创建一个本地库,并通过js-ctypes(见上面的链接)从JavaScript代码调用它。
一个"signed" Java applet,被赋予正确的权限并经用户批准,可以在浏览器上下文中运行并访问文件或数据库。然而,今天浏览器中的Java applet几乎从未被使用过(我已经在浏览器中禁用Java多年了)。
微软浏览器提供ActiveX,这是一种在浏览器中运行本地代码的方式,但我不知道今天是否有人使用它。
Google的nativeclient是另一种运行本地代码的方法,但目前只适用于Google浏览器。不确定这是否允许直接访问文件
PythonExt为Firefox带来Python支持:http://code.google.com/p/pythonext/
我不确定他们为Firefox的快速发布更新它的速度有多快,你确实需要安装一个扩展,然后它只会在一个受信任的上下文中工作(即你自己设置的扩展)
或者你可以创建Windows 8 Metro风格的应用程序,让你可以同时使用web技术和本地代码:
http://channel9.msdn.com/posts/Raman-Sharma-Building-Metro-Style-Apps-with-C-and-JavaScripthttp://code.msdn.microsoft.com/Hybrid-JavaScript-and-C-e6dc77fa
- 如何运行位于boost/libs/python/example/tutorial目录中的hello.cpp和Jamfil
- Pybind11:将元组列表从Python传递到C++
- 如何在c++中使用引用实现类似python的行为
- 是否可以通过C++扩展强制多个python进程共享同一内存
- 递归列出所有目录中的C++与Python与Ruby的性能
- IPC使用多个管道和分支进程来运行Python程序
- 从python中调用C++函数并获取返回值
- Python 3.7 和 excess_args 的 SWIG 问题
- Python中的for循环与C++有何不同
- 使用Pybind11向Python公开Eigen::张量
- Python str to C++ to Python str
- 如何使用Python从C++中读取谷物序列化数据
- 如何在C++中使用pybind11加载一个pickle python列表
- 如何在c++中使用system()来运行包含空格的python脚本
- python集合的C++等价物是什么.计数器
- 如何将数组从Objective-C发送到C++函数
- 如果C++对象的类在另一个boost模块中声明,如何使用boost将指向该对象的指针返回到python
- 从python调用openMP共享库时,未定义opnMP函数
- Firefox中的原生Java / Python / Objective C
- Objective-c选择器,其他语言如c++, python, ruby, java, javascript有类似的东