Pepper Plugin API (PPAPI) plugins - Go语言中文社区

Pepper Plugin API (PPAPI) plugins


一.浏览器插件接口技术:浏览器在使用时,常常需要在网页中调用外部程序。例如在网页中播放视频,实际是调用本地的播放器程序,也就是一个外部程序。这个程序被封装成一种插件接口,可以供网站代码中调用。常用的插件形式有 NPAPI, PPAPI和ActiveX。

(1)NPAPI(Netscape Plugin Application Programming Interface)      网景插件应用程序编程接口

NPAPI是当今最流行的插件架构,由网景开发,后Mozilla维护,几乎所有浏览器都支持,不过存在很大的安全隐患,插件可以窃取系统底层权限,发起恶意攻击。

(2)PPAPI(Pepper Plugin API)

2010年,Google在原有网景NPAPI(Netscape Plugin API)基础上开发了新的PPAPI(Pepper Plugin API),将外挂插件全部放到沙盒里运行,具有更高的安全性。2012年Windows、Mac版本的Chrome浏览器先后升级了PPAPI Flash Player。PPAPI的flash相较于NPAPI来讲,内存占用更大,因为全在沙盒里面运行。

(3)ActiveX

ActiveX 是一个开放的集成平台,为开发人员、 用户和 Web生产商提供了一个快速而简便的在 Internet 和 Intranet 创建程序集成和内容的方法。 使用 ActiveX, 可轻松方便的在 Web页中插入 多媒体效果、 交互式对象。


二. Qt中调用插件

1.Qt与ActiveX插件

Qt可以通过QAxwidget来调用本地ActiveX控件,更进一步可以使用Qt中的dumpcpp方法自动生成相关ActiveX插件的调用库函数。

2. QWebkit与自定义插件

QWebkit基于webkit内核,拥有使用自定义插件的功能,具体方法是QWebpage::creatplugin方法。

3.QWebengine与PPAPI插件

Qt5.6之后就不支持QWebkit了,改为使用QWebEngine。QWebengine基于chrome内核,支持PPAPI插件。


版权声明:本文来源CSDN,感谢博主原创文章,遵循 CC 4.0 by-sa 版权协议,转载请附上原文出处链接和本声明。
原文链接:https://blog.csdn.net/qq_28093585/article/details/73459718
站方申明:本站部分内容来自社区用户分享,若涉及侵权,请联系站方删除。
  • 发表于 2023-01-02 08:12:14
  • 阅读 ( 190 )
  • 分类:Go Web框架

0 条评论

请先 登录 后评论

官方社群

GO教程

猜你喜欢