npapi插件是什么(一文解读npapi插件细则)
.
为什么几乎所有的浏览器,都在正在淘汰或者已经淘汰对npapi插件的支持?npapi插件全称netscape plugin application programming interface,称为网景插件应用程序编程接口。npapi插件可以实现流媒体视频和剪切板访问,但是随着浏览器和网页的迅猛发展,npapi插件存在着的性能问题、安全问题和崩溃问题,对于浏览器使用者都是潜在的隐患,可见npapi插件已经显得老态龙钟。
.
在很久以前,npapi插件用来帮助浏览器渲染一些html没有的东西,比如pdf、在线视频等等。其实在那个时候npapi插件是个非常好的架构,相对于activex架构来说,简直可以称得上是业界良心。npapi插件的推出时间是1995年,那个时候手机可以砸死人,学校的电脑机房要穿鞋套才能进,在那个时候无论是网络环境还是商业环境,都比现在都要简单许多,所以那个时候几乎所有的api设计都自然的忽略掉了安全性的问题。
.
曾经有用npapi做过游戏的朋友说,npapi的确存在很大的安全问题,那感觉就像是ie的activex一样,可以随意的调用本地资源。几年之前一位程序员朋友就告诉我,npapi可以做很多不可描述的事情,虽然至今没见爆出过什么大新闻。像taobao、迅雷等等国内大佬都有过类似的插件,非ie内核的浏览器比如chrome、opera、safari、firefox当时都支持这个机制。总之,npapi插件可以任意访问系统资源,而且权限非常高。
.
npapi插件它和浏览器是平级运行的,它可以打开网页,给你下载安装一个木马,然后随后把你的杀毒软件关掉。而且npapi插件除了安全性问题之外,一旦npapi崩溃那么浏览器就会跟着一起崩溃。于是各个浏览器就想着把npapi插件放到另外一个进程中运行,不过这样就又带来了耗电量增加,图形效率低,脚本效率低等一系列的问题。
.
谷歌就在这个时候推出了ppapi,然后浏览器业界都觉得这个新api挺好,因为有沙箱,所以插件用起来更加的安全,谷歌从chrome的45版本就开始移除了npapi、java applets、silverlight等插件的支持,推出html5之后flash player也是视频播放的次选项了,网页也越来越轻盈化和标准化了,这无论对用户还是开发者来说都是一件好事。adobe也认怂了,发布了新版本的ppapi插件,如果你遇到了flash插件无法运行的对话框,你可以尝试去下载一个最新的ppapi的flash插件,或者去下载一个最新版本的chrome。
上一篇: js模拟弹出效果代码修正版