2016-03-21 19 views
1

私はうまく動作するWeb通知スクリプトを持っています。しかし、私がChrome 43でテストしていたときに、「DOMException:Registration failed - permission denied」というエラーが発生しました。このエラーは、サブスクリプション段階で発生します。DOMException:登録に失敗しました - 許可が拒否されました

ここで上記のコードで登録

navigator.serviceWorker.register('sw.js').then(function(reg) { 
    console.log('[ServiceWorker] Registration Obj', reg); 
    reg.pushManager.subscribe({ 
     userVisibleOnly: true 
    }).then(function(sub) { 
     //This never executes and catch gets called 
     console.log('Subscription successful, Subscription endpoint:', sub.endpoint); 
    }).catch(function(error) { 
     console.log("Error during subscription ", error); 
    }); 
}).catch(function(error) { 
    if (Notification.permission === 'denied') { 
     console.warn('Permission for Notifications was denied'); 
    } else { 
     console.error('Unable to subscribe to push.', error); 
    } 
}); 

の通常のプロセスであるコードスニペットだ、エラーiはreg.pushManager.subscribe()を行うステップの間に起こります。これは、クロム49

  • では発生しません

    • このエラーは常にChromeバージョン43

    [注]に発生する私は、Chromeバージョン43との一般的な問題を想定したがときに私goroost.comやpushcrewのようなチェックサイトはうまく動作しているようです。私だけが動作していない

  • +0

    gcm_sender_idとgcm_user_visible_onlyの正しい値を持つページにリンクされたマニフェストがありますか? – Marco

    +0

    はい、マニフェストには両方のフィールドがあります。また、他のバージョンのChromeでも動作します。 –

    +0

    2つのキャッチ関数のどちらが呼び出されていますか?最後のもの?その場合、2つのメッセージのどちらがログに記録されますか?最後の質問ですが、なぜこのような古いバージョンのChromeをサポートする必要がありますか?それはほぼ一年前にリリースされました! – Marco

    答えて

    5

    私は同様の問題に直面しました。あなたは、特に43

    1. クロームバージョンを見ているあなたの manifest.jsonを確認してください。あなたはすでにそれがより高いバージョンで動作すると言いましたので、私はあなたがマニフェストで何かを見逃していると思います。このlinkでは、マント・ガントは、マニフェストに問題がある場合にこのエラーが発生する可能性があることを示唆しています。

    2. 末尾にコンマがないことを確認してください。

    3. また、バージョン43は通知オブジェクトのデータ属性をサポートしていないため、通知をクリックするとウィンドウを開くことができないため、これらの問題も処理する必要があります。

    5

    この問題が発生しました。 prajnavanthaの回答に加えて、ブラウザの通知をブロックするときに誤ってブラウザの通知をクリックしたことが原因である可能性があります。 Chromeでこれを修正するには、[設定] - > [詳細設定を表示] - [プライバシー]で[コンテンツ設定] - > [通知]の順に選択し、[管理]を選択します。ここにいたら、影響を受けるURLの通知を許可します。

    +0

    このソリューションは私のために働きました。私は決してプッシュを実装したことがないので、ショックを受けています。それはどうしたの? – zoltar

    +0

    新しいサブスクリプションを設定する際に問題が発生したため、私のために働きました。どうもありがとうございました。 Btw、Chromeバージョン62.0.3202.94 – natterstefan