当在Chrome的本地存储中设置包含日期的数据时,除了消失的日期之外,所有数据都会被正确检索,但我真的不知道自己做错了什么。
await browser.storage.local.remove("ghunt");
var payload = {"ghunt": {
"cookies": "dummydata",
"date": new Date(),
"step": "login"
}};
console.log("Raw payload => ", payload);
console.log("Putting the payload in local storage...")
await browser.storage.local.set(payload)
console.log("Retrieving data from local storage...")
var storage = await browser.storage.local.get("ghunt");
console.log("Retrieved data => ", storage);完全相同的代码/命令完全可以在Firefox上工作。
PS :我正在使用来自Mozilla的WebExten-Poly填充来提供跨浏览器支持。
发布于 2022-04-22 01:32:49
StorageArea.set()上的MDN (强调地雷):
通常不可能存储其他类型,例如
Function、FunctionRegExp、Set、Map、ArrayBuffer等等。这些不受支持的类型中有些将恢复为空对象,而有些则导致set()抛出错误。这里的确切行为是浏览器特定的.
存储new Date().getTime(),它是一个整数,而不是new Date()。
https://stackoverflow.com/questions/71962379
复制相似问题