问题
在 Linux 平台上使用自己写的阅读软件时,需要从本地磁盘中读取缓存的书籍。
这个过程通过tauri
的asset
协议从本地读取文件,这个功能在 Windows 平台工作很正常,但是在 Linux 平台上出现了asset
协议读取错误。
最终发现是 Linux 平台上的asset
协议和 Windows 平台上的协议头不相同,导致相同的CSP
(内容安全策略)设置阻止了asset
协议访问。
解决方法
原始设置:
"csp": "default-src blob: data: filesystem: http: https: tauri: asset: https://asset.localhost 'self'"
在原来的tauri.config.json
的CSP
设置项添加 Linux 平台的asset
协议头。
添加后的设置:
"csp": "default-src blob: data: filesystem: http: https: tauri: asset: asset://localhost https://asset.localhost http://asset.localhost 'self'"