所以我正在使用一个不会托管在谷歌网上商店的 chrome 扩展程序,因此我需要向它添加自动更新功能,但是我需要它更加动态,我将尝试说明什么我正在尝试通过一个小场景来完成,所以它看起来不会毫无意义。
设想
我需要一个扩展,每个版本都有不同的版本,即每个版本都有一个免费版本和一个付费(功能丰富)版本,每当发布新版本时,扩展都会根据它的版本进行更新。
换句话说,服务器应该能够检测到用户的版本并根据它“即动态”提供crx文件。
我尝试/想到的
1.我尝试设置一个带有扩展版本的cookie,所以当自动更新发生时服务器可以检查它并生成xml文件,不幸的是我发现cookie没有在chrome发送的自动更新标头中发送.
2.我可以让扩展程序在chrome启动时与服务端对话,所以它会发送它的版本,所以服务器会将它与ip一起存储,当自动更新发生时,服务器会检查请求ip并匹配它与提供 xml 的版本一起提供,我认为这可以工作,但它有点蹩脚的方法。
3.我可以使用本机应用程序根据版本修改清单文件以指向不同的xml文件,我想这也可以,但我不赞成使用本机应用程序。
4.我试图想办法修改get-request参数(即添加自定义参数,如版本),但似乎没有办法这样做。
5.我可以将不同的版本分开为不同的扩展(即免费版将与付费版在不同的包中),但是我有兴趣将它们合二为一,因此用户可以升级/降级他们的订阅而无需安装/删除他们已经拥有的扩展名。
我想就是这样,我希望有人对我如何完成我想做的事情有更好的想法。
PS我知道标题有点模糊,但我找不到更好的,所以如果你想出更好的标题,请告诉我。