ページが開かれていない場合でも、ブラウザプッシュメッセージを作成する必要があります。 Salesforceで開発しているため、いくつかの制限があります。したがって、ページがロードされると、バックエンドメソッドを呼び出し、コールバック関数で応答を取得するjavascriptブロックがあります。そして、私はteoretically私はserviceWorkerを使用することができ、それはpostMessages経由でページと通信することができ、通知を表示できることがわかった。私はすでにボタンをクリックして通知を表示する例を見つけましたが、serverからの応答を得るためにserviceWorkerを使ってページと通信する方法を見つける必要があります。 私はserviceWorker http://www.html5rocks.com/en/tutorials/service-worker/introduction/についてこのガイドを見てきましたが、私にとってはそれほど明確ではありません。私はGCMとしてミドルウェアを使用したくないですが、クライアント側のJSだけです。 してください、私にそれを行うためのいくつかの例のコードを教えてください。Webサーバーをポーリングするだけでブラウザプッシュ通知
答えて
いいえ....現在、サービスワーカーapiを使用してWebサイトを閉じたときに、ユーザーにプッシュ通知を表示する方法は1つだけです。
最初の方法は、あなたのウェブサイトがopeの場合にのみプッシュ通知を表示することです。 1)Ajaxポーリング これは、Facebookで使用されている彗星アプローチと呼ばれる手法です。この方法では、定期的な間隔でサーバーにポーリングします(定期的にサーバーにajax呼び出しを行う必要があることを意味します)、ユーザーに表示する新しい通知があるかどうかを確認します。以下のコードを確認してください。 $(document).ready(function(){ setInterval(updateCount、120000); }); するvar UPDATECOUNT =機能(){ するvar URL = example.com //独自のURL
$.ajax({
url:ajaxURl,
type: "POST",
dataType:"json",
error: function(error){
console.log("Error occured in the ajax call while saving the endpoint",error);
},
success:function(data){
console.log(data)
if(data == new notifcation){
//then show notification
}
},
timeout:60000
});
を与えます};
This is simple approach to show the notification to the user.
Cons:- 1)It will trigger to many ajax call to the server which will eventually increase the load on the server.
2)User have to be logged in to the system then only you can show notification to end user.
2)サービスワーカーアピ あなたがクライアントのブラウザにサービスワーカーAPIを登録する必要があります。このアプローチでは。サーバワーカーAPIが登録されると、ブラウザのバックグラウンドで実行され、プッシュイベントを待ちます。 プッシュイベントがサービスワーカーAPIをトリガーすると、ユーザーがあなたのウェブサイトにログインしていなくてもプッシュ通知が発生します。
Cons:- 1)the service worker api will only run in the certain browser
2)Your website should https for using the service worker api as they already mention in the article.
私はあなたがあなたの目的を明確にすることができ
コードの説明も追加する必要があります。 –
あなたが言及した最初のアプローチはまったく間違っています! @ ravi-gupta "ページが開かれていないときは慎重に" –
- 1. jQuery - 通知ライブラリ - ポーリング
- 2. サーバー送信イベント対AJAXポーリング対通知用WebSockets
- 3. WebサーバーからのGrowl通知
- 4. ajaxでサーバーをポーリングする
- 5. バックグラウンドでサーバーをポーリングする
- 6. プッシュ通知用サーバー?
- 7. WebサービスをiPhoneでポーリングするのを避けますか?
- 8. Androidの別のサーバーから通知を受け取る方法
- 9. 紺碧の通知ハブからの通知を受け取るWebアプリケーションを登録できますか?
- 10. モバイルWebでプッシュ通知
- 11. Androidエミュレータで通知バーが1回だけ開きます
- 12. 通知を送信するだけでなく、AlarmManagerを起動する
- 13. なぜ私はブラックベリープッシュ通知サーバーに通知を盗んだときにHTTP 401 "Unauthorized"を受け取るのですか?
- 14. 通知が通知されたときに通知を受け取る方法
- 15. アクティビティを開始せずに通知を表示するだけです
- 16. Javaのプッシュ通知サーバー
- 17. 他のユーザーが電話をかけたときにWebサービスの発信者に「通知」するサーバー
- 18. 他のアプリ通知の通知を受けることができます
- 19. ログインページに一度だけログアウト通知を表示
- 20. 定期的にサーバーをポーリングするアプリケーションモデル
- 21. 通知のあるクライアント/サーバーのWCFベストプラクティス
- 22. アンドロイドのWebサーバー通信セキュリティ
- 23. アマゾンEC2のAppleプッシュ通知サーバーは接続されていますが、通知は受けません
- 24. ローカル通知を1回だけ発信する方法はありますか?
- 25. 通知アイコンをクリックすると、一度だけアクティビティが表示されます
- 26. Railsサーバーを使用したプッシュ通知
- 27. .NETでiOSプッシュ通知サーバーを作成する方法
- 28. PHPでアンドロイドプッシュ通知サーバーを構築する方法
- 29. java実装:Webサービスをポーリングする
- 30. サーバー送信イベント対ポーリング
..私はあなたのクエリに答えを期待?ページが開いている間に通知を表示するだけの場合は、サービスワーカーは必要ありません。 – Marco
@Marcoページが閉じられたときに通知を受け取る必要があります。これはhttps://storage-cdn.realtime.co/chrome-push/index.htmlの例です。 – vladdihoney
残念ながら、ブラウザのプッシュサービスを使用せずにページが閉じられたときに通知を受け取る方法はありません。 – Marco