我想把Chrome扩展放在我的个人服务器上,然后通过浏览器下载安装,但是如果从服务器收到并下载crx作为响应,会出现错误crx_required_proof_missing,是不是不能把它放在个人服务器上继续?我根据文档创建了一个CRX文件,将其上传到节点服务器,从浏览器接收,然后继续下载。
crx_required_proof_missing
enyaitl31#
Chrome 75引入了一些变化,如果一个扩展是使用直接URL下载的,那么它会试图聪明地计算它的元数据,然后包含类型,这表明它是一个扩展,Chrome试图立即安装它-这对于不在Chrome扩展商店中的自定义扩展失败。因此,如果直接下载CRX文件,Chrome会将该文件的content-type计算为“application/x-chrome-extension”,然后触发自动安装(自定义扩展失败)。但如果同一个文件是从网站间接下载的,网站(在我们的例子中)会将文件的content-type设置为'application/octet-stream',这是一个通用的设置,Chrome不会尝试自动安装它。因此,首先要确保服务器提供文件时使用的content-type是application/x-chrome-extension
content-type
application/x-chrome-extension
1条答案
按热度按时间enyaitl31#
Chrome 75引入了一些变化,如果一个扩展是使用直接URL下载的,那么它会试图聪明地计算它的元数据,然后包含类型,这表明它是一个扩展,Chrome试图立即安装它-这对于不在Chrome扩展商店中的自定义扩展失败。
因此,如果直接下载CRX文件,Chrome会将该文件的
content-type
计算为“application/x-chrome-extension”,然后触发自动安装(自定义扩展失败)。但如果同一个文件是从网站间接下载的,网站(在我们的例子中)会将文件的
content-type
设置为'application/octet-stream',这是一个通用的设置,Chrome不会尝试自动安装它。因此,首先要确保服务器提供文件时使用的
content-type
是application/x-chrome-extension