【发布时间】:2018-11-13 12:38:11
【问题描述】:
尝试使用 ASP.NET Core 2.1 和 Nuget 制作渐进式 Web 应用程序:WebEssentials.AspNetCore.PWA。
我的 serviceworker 和清单显示在 Chrome 开发工具中,但是当我点击“添加到主屏幕”时,除了在计算机上显示错误之外什么都没有发生,而在手机上,顶部的加载横幅卡在加载中。
错误:
站点无法安装:页面已请求横幅提示 取消
我似乎无法找到有关此错误的任何信息,所以希望你们能帮助我。提前致谢。
服务工作者:
self.addEventListener('install', async event => {
const cache = await caches.open(CACHE_NAME);
cache.addAll(urlsToCache).catch(err => console.log('An error occured: ', err));
});
self.addEventListener('fetch', event => {
const request = event.request;
const url = new URL(request.URL);
if (url.orgin === location.orgin) {
event.respondWith(cacheFirst(request));
} else {
event.responseWith(networkFirst(request));
}
});
async function cacheFirst(request) {
const cachedResponse = await caches.match(request);
return cachedResponse || fetch(request);
}
async function networkFirst(request) {
const cache = await caches.open('wportal-dynamic-v1');
try {
const res = await fetch(request);
cache.put(request, res.clone());
return res;
} catch (exception) {
console.log('An error occured in networkFirst: ', exception);
return await cache.match(request);
}
}
【问题讨论】:
标签: javascript asp.net asp.net-core progressive-web-apps web-essentials