Html 恢复角度为8的图像的完整路径
我正在用PWA在Angular 8中构建一个应用程序。这是一种旅行退款,用户通过应用程序发送发票图片。然后在联机时保存到数据库中,如果用户脱机,应用程序将保存在IndexedDb中。当再次联机时,应用程序会在IDB中查找待上传的内容,然后进行查找。我不想保存图像本身,因为在某些浏览器中,IDB的缓存内存有限,所以我选择保存图像路径,以便应用程序以后可以找到它Html 恢复角度为8的图像的完整路径,html,angular,typescript,progressive-web-apps,indexeddb,Html,Angular,Typescript,Progressive Web Apps,Indexeddb,我正在用PWA在Angular 8中构建一个应用程序。这是一种旅行退款,用户通过应用程序发送发票图片。然后在联机时保存到数据库中,如果用户脱机,应用程序将保存在IndexedDb中。当再次联机时,应用程序会在IDB中查找待上传的内容,然后进行查找。我不想保存图像本身,因为在某些浏览器中,IDB的缓存内存有限,所以我选择保存图像路径,以便应用程序以后可以找到它 当我的问题出现时,我尝试在IDB中保存图像完整路径,以便在以后联机时获取它,但出于安全原因,某些浏览器不允许这样做。那么,还有另一种方法吗
当我的问题出现时,我尝试在IDB中保存图像完整路径,以便在以后联机时获取它,但出于安全原因,某些浏览器不允许这样做。那么,还有另一种方法吗?正如talhature所提到的,不可能保存URL。这也是由于安全原因,网站不应该能够读取文件系统 您可以检索如下所示的文件: HTML: 如果能够将Blob持久化到localstorage,则可以使用联机和脱机事件来区分:
let online = window.navigator.onLine;
function handleOnline() {
const data = JSON.parse(localStorage.getItem('data'));
// post to backend
localSorage.setItem('data', null);
online = true;
}
function setData(data) {
if (online) {
// post to backend
} else {
localSorage.setItem('data', JSON.parse(data))
}
}
window.addEventListener('online', handleOnline);
window.addEventListener('offline', () => online = false);
如talhature所述,无法保存URL。这也是由于安全原因,网站不应该能够读取文件系统 您可以检索如下所示的文件: HTML: 如果能够将Blob持久化到localstorage,则可以使用联机和脱机事件来区分:
let online = window.navigator.onLine;
function handleOnline() {
const data = JSON.parse(localStorage.getItem('data'));
// post to backend
localSorage.setItem('data', null);
online = true;
}
function setData(data) {
if (online) {
// post to backend
} else {
localSorage.setItem('data', JSON.parse(data))
}
}
window.addEventListener('online', handleOnline);
window.addEventListener('offline', () => online = false);
let online = window.navigator.onLine;
function handleOnline() {
const data = JSON.parse(localStorage.getItem('data'));
// post to backend
localSorage.setItem('data', null);
online = true;
}
function setData(data) {
if (online) {
// post to backend
} else {
localSorage.setItem('data', JSON.parse(data))
}
}
window.addEventListener('online', handleOnline);
window.addEventListener('offline', () => online = false);