electron 电子自动更新程序错误:更新检查失败/JSON响应无效

eagi6jfj  于 2023-03-16  发布在  Electron
关注(0)|答案(1)|浏览(552)

尝试使用Electron的autoUpdate模块时,它会从我的Vercel应用程序中获取更新,例如:
https://backoffice-electron-updater.vercel.app/update/darwin/1.2.366
这个回答似乎是正确的:

{"name":"v1.2.367","notes":"","pub_date":"2023-03-09T16:01:51Z","url":"backoffice-electron-updater-1auzox7wu-common-ground.vercel.app/download/darwin?update=true"}

接收此更新JSON响应的电子应用程序随后抛出错误:

[Error: Update check failed. The server sent an invalid JSON response. Try again later.] {
  code: 6,
  domain: 'SQRLUpdaterErrorDomain'
}

我不确定为什么这个响应是无效的,是JSON响应中缺少一个键吗?

vwkv1x7d

vwkv1x7d1#

经过长时间的调试,我发现电子自动更新模块不接受从非https URL获取更新包。
Vercel的URL env变量没有https。
修改Hazel源代码以添加https修复了该问题:https://github.com/vercel/hazel/blob/master/lib/routes.js#L167
如果你使用的是Github私有回购协议,只需将其更改为:

? `https://${url}/download/${platformName}?update=true`

相关问题