我試圖訂閱用戶,但這是我第一次得到的錯誤。 第二次,這是工作,因爲用戶已經激活未捕獲(承諾)DOMException:訂閱失敗 - 無活動服務工作者
這是我的代碼:
if ('serviceWorker' in navigator) {
console.log('Service Worker is supported');
navigator.serviceWorker.register('sw.js').then(function(reg) {
console.log(':^)', reg);
reg.pushManager.subscribe({
userVisibleOnly: true
}).then(function(sub) {
console.log('endpoint:', sub.endpoint);
var div = document.getElementById('id');
div.innerHTML = div.innerHTML + sub.endpoint;
// var b = document.getElementsByTagName('body')[0];
//b.appendChild(div);
//alert(sub.endpoint);
});
});
}
我已經試過以下,但ready.then()
方法是不會發生:
if ('serviceWorker' in navigator) {
console.log('Service Worker is supported');
navigator.serviceWorker.register('sw.js').then(function(sreg) {
console.log(':^)', sreg);
navigator.serviceWorker.ready.then(function(reg) {
reg.pushManager.subscribe({
userVisibleOnly: true
}).then(function(sub) {
console.log('endpoint:', sub.endpoint);
var div = document.getElementById('id');
div.innerHTML = div.innerHTML + sub.endpoint;
// var b = document.getElementsByTagName('body')[0];
//b.appendChild(div);
//alert(sub.endpoint);
});
});
});
}
有什麼建議嗎?
,但它仍然無法註冊用戶使用stateChange聽者,這是我的問題,我 – user6609184
已經編輯我的答案。你可以檢查這個 – vbharath
仍然不工作 – user6609184