问题

在 Linux 平台上使用自己写的阅读软件时,需要从本地磁盘中读取缓存的书籍。 这个过程通过tauriasset协议从本地读取文件,这个功能在 Windows 平台工作很正常,但是在 Linux 平台上出现了asset协议读取错误。

最终发现是 Linux 平台上的asset协议和 Windows 平台上的协议头不相同,导致相同的CSP(内容安全策略)设置阻止了asset协议访问。

解决方法

原始设置:

"csp": "default-src blob: data: filesystem: http: https: tauri: asset: https://asset.localhost 'self'"

在原来的tauri.config.jsonCSP设置项添加 Linux 平台的asset协议头。

添加后的设置:

"csp": "default-src blob: data: filesystem: http: https: tauri: asset: asset://localhost https://asset.localhost http://asset.localhost 'self'"

参考