Firefox Extension 开发

说一下场景,医院的内部网络是连入卫生专网的,有一个业务系统,并不是部署在本地,也无法和业务厂商进行数据对接,这个时候,需要去采集这个系统内的业务数据,一直没有想到很好的解决方案。

由于这个业务系统使用的B/S架构,使用的是火狐的浏览器,突然有一天就想到,是不是可以使用火狐的插件来实现,于是动手去研究起来了。

火狐的插件,起源的时间应该是很早之前,网上也没有找到很好的教程,所以只好翻找官方文档,今天也是把业务需求搞定了。所以想到了写这篇文章,梳理一下,一方面是Extension的大致脉络,还有一些是具体的细节问题,是怎么解决。

https://extensionworkshop.com/ 这个官方网站是入门的网站。

这张图对于理解Extension是非常关键了,描述了框架体系是怎样的。简单的说,manfest.json是入口文件,里面描述了插件的所有概要信息,包括插件的基本信息,图标,权限,关键页面的载入文件,如何更新插件等。

background可以理解后台常驻的脚本,一旦插件安装之后常驻在浏览器运行的,也是API功能最为强大的。

content_scripts是与打开的页面相互关联的,虽然没有background的API来的强大,但是因为能够注入到页面当中,所以能够获取和修改页面数据,也能够根据用户在页面的行为,产生互动。

browser_action是右上角图标用户点击后打开的页面,定义了单独的网页,在这个网页中可以进行用户的交互。

不同的Tab之间如何进行数据的交互

content_scripts可以通过消息机制,与background进行数据的互动。但是这种消息机制,只限于用户当前打开的页面。如果需要与不活动的Tab进行数据的交互,就需要使用browser.tabs.sendMessage来进行数据的交互,当然先要通过browser.tabs.query来找到你想要交互Tab的id。

jQuery在content_scripts的加载

manifest.json中是可以定义多个js文件的,但是在content_scripts是有加载顺序的,所以必须要把jQuery的js文件,放在前面,才可以保证顺利加载。

纯内网环境如何更新

企业内部部署的Extension,可以定义自动更新脚本的文件。但是这个文件必须要托管在https的网站上面,否则提交的Extension是无法通过签名的。由于纯内网环境,也没有配置DNS,也不想给每台电脑安装自签名的https证书,所以用另一个方法解决。

当打开业务系统页面的时候,获取当前Extension版本,然后请求内网服务器,与最新的API版本进行比较,如果有版本更新,则在业务系统显著位置显示横幅,引导用户点击下载最新的插件进行更新。

《Firefox Extension 开发》有0个想法

  1. Сервисное обслуживание кондиционеров является обязательным при эксплуатации оборудования.

    Любой производитель систем кондиционирования в гарантийном талоне указывает обязательный срок, в течение которого должно быть произведено сервисное обслуживание кондиционера. Не проведение сервисного обслуживания влечёт за собой:

    – выход из строя жизненно важных элементов кондиционера;
    – может послужить отказом от выполнения гарантийных обязательств поставщиком либо монтажной организацией;

    https://www.imgbb.com/https://www.i.ibb.co/M2zb5jN/8555189157.jpg
    http://www.klimatservice24.ru/
    Для бытовых сплит систем, используемых в квартирах, домах, и т.п. помещениях сервисное обслуживание производится в весенние месяцы, перед началом интенсивной эксплуатации кондиционера.

    Сервисные инженеры Климат Сервис 24, по доступным ценам производят профессиональное обслуживание кондиционеров с применением измерительных приборов и оборудования.

    https://www.klimatservice24.ru/remont-konditsionerov-dzerzhinskiy/ – ремонт кондиционеров Дзержинский,

    https://www.klimatservice24.ru/remont-konditsionerov-domodedovo/ – ремонт кондиционеров Домодедово,

    https://www.klimatservice24.ru/remont-konditsionerov-korolyev/ – ремонт кондиционеров Королёв,

    https://www.klimatservice24.ru/remont-konditsionerov-podolsk/ – ремонт кондиционеров Подольск,

    https://www.klimatservice24.ru/remont-konditsionerov-khimki/ – ремонт кондиционеров Химки,

    В составе работ (https://www.klimatservice24.ru/):

    – Чистка или промывка теплообменников наружного и внутренних блоков;
    – Чистка, обеззараживание дренажной системы;
    – Проверка работоспособности компрессора, электрической части, моторов вентиляторов;
    – Проверка работоспособности пульта управления;
    Сайт компании –
    https://www.klimatservice24.ru/remont-bytovykh-konditsionerov/ – ремонт бытовых кондиционеров,
    https://www.klimatservice24.ru/remont-invertornogo-konditsionera/ – ремонт инверторного кондиционера,
    https://www.klimatservice24.ru/remont-potolochnykh-konditsionerov/ – ремонт потолочных кондиционеров.

发表评论

电子邮件地址不会被公开。 必填项已用*标注