ホームページ  >  記事  >  Java  >  JAVA Web リアルタイム メッセージ バックグラウンド サーバー プッシュ テクノロジ --- GoEasy

JAVA Web リアルタイム メッセージ バックグラウンド サーバー プッシュ テクノロジ --- GoEasy

高洛峰
高洛峰オリジナル
2016-12-07 15:39:521917ブラウズ

リアルタイム メッセージのプッシュと受信が必要なプロジェクトが増えています。GoEasy を使用することをお勧めします。これは、API を使用して簡単にリアルタイム プッシュを実現できます。

ブラウザの互換性: GoEasy プッシュは、WebSocket とポーリングの 2 つの接続方法をサポートしているため、IE6 以降のすべてのバージョンと、Firefox、Chrome、Safari などの他のブラウザをサポートしています。

さまざまな開発言語をサポート: GoEasy Push は、バックグラウンド プログラムがどの言語を使用していても、Restful API を通じてバックグラウンドでのリアルタイム プッシュを実現できます。例: Java、PHP、C#、Ruby、Python、C、C++、ASP.NET、Node.js...

バックエンドとフロントエンドのプッシュをサポート: Restful API はバックエンドで使用され、goeasy.js はバックエンドで使用されます。フロントエンドの使い方はとても簡単です。

GoEasy の使用手順をご紹介します:

1. Goeasy 公式 Web サイトでアカウントを登録し、アプリケーションを作成する必要があります。アプリケーションが作成された後、システムはデフォルトで 2 つのキーを生成します。キーとサブスクライブキー

2. リアルタイム購読とフロントデスクでの受付

goeasy.js を導入し、goeasy の submit メソッドを呼び出してチャンネルを購読するだけです。キーまたはサブスクライブキー。メッセージは、subscribe のパラメータ onMessage のコールバック関数を通じてリアルタイムで受信できます。

3. フロントエンドのリアルタイム プッシュ

の場合は、goeasy.js を導入する必要があります (ページが既に導入されている場合、インポートすることはできません)。その後、goeasy の public メソッドを呼び出してメッセージを登録済みのチャンネルは、キーを押した場合にのみ使用できます。

4. バックエンドのリアルタイムプッシュ

GoEasy Restful API を呼び出し、post メソッドを使用して http://goeasy.io/goeasy/publish にアクセスします。また、3 つの必要なパラメータも必要です:

appkey: 公開キー

channel: 登録したチャンネル

content: コンテンツのプッシュ

はとても簡単です。

プッシュの原理: GoEasy の実装原理は非常にシンプルです。つまり、プッシュ メッセージの一方の端はプッシュのみを担当し、受信する必要があるページは事前にサブスクライブする必要があります。何を購読しますか?チャンネル登録してください。メッセージが特定のチャネルにプッシュされると、クライアントは同じチャネルにサブスクライブするため、正確な受信が保証されます。チャネルを通じて、どのページまたはユーザーがこのチャネルからプッシュされたメッセージを受信できるかを指定できます。

以下に、以前に書いた小さな例を掲載します。これは、Web ページ上で Javascript を使用して購読、プッシュ、受信、購読解除を行うものです。中の appkey は、goeasy 公式デモの appkey です。

<html>
<head>
<title>GoEasy Test</title>
 
<script type="text/javascript" src="https://cdn.goeasy.io/goeasy.js"></script>
<script type="text/javascript">
  if(typeof GoEasy !== &#39;undefined&#39;){
    var goEasy = new GoEasy({
      appkey: &#39;ba821151-e043-4dfb-a954-c73744c8d323&#39;,
      userId:"222",
      username:"22",
      onConnected:function(){
        console.log("Connect to GoEasy success.");
      } ,
      onDisconnected:function(){
        console.log("Disconnect to GoEasy server.");
      } ,
      onConnectFailed:function(error){
        console.log("Connect to GoEasy failed, error code: "+ error.code+" Error message: "+ 
        error.content);
      }
    });
  }
       
  subscribe();
  function subscribe(){
       goEasy.subscribe({
        channel: &#39;notification&#39;,
        onMessage: function(message){
          console.log(&#39;Meessage received:&#39;+message.content);
        },
        onSuccess:function(){
 
          console.log("Subscribe the Channel successfully.");
 
        },
 
        onFailed: function(error){
 
          console.log("Subscribe the Channel failed, error code: "+ error.code + " error 
          message: "+ error.content);
 
        }
 
      });
 
  }
       
   function publishMessage(){
     goEasy.publish({
        channel: &#39;notification&#39;,
        message: &#39;You received a new notification&#39;,
        onSuccess:function(){
 
          console.log("Publish message success.");
 
        },
        onFailed: function(error){
 
          console.log("Publish message failed, error code: "+ error.code +" Error message: 
          "+ error.content);
 
        }
      });
    
   }
          
   function unsubscribe(){
        goEasy.unsubscribe({
          channel:"notification",
          onSuccess: function(){
 
            console.log("Cancel Subscription successfully.");
 
          },
          onFailed: function(error){
 
            console.log("Cancel the subscrition failed, error code: "+ error.code + 
            "error message: "+ error.content);
          }
 
        });
      }
     
 </script>
</head>
<body>
 <input type="button" value="publish" onclick="publishMessage()"/>
 <input type="button" value="unsubscribe" onclick="unsubscribe()"/>
 <input type="button" value="subscribe" onclick="subscribe()"/>
</body>
</html>

上記は、 JAVA Web リアルタイム メッセージ バックグラウンド サーバー プッシュ テクノロジのコンテンツ --- GoEasy 関連コンテンツの詳細については、PHP 中国語 Web サイト (www.php.cn) に注目してください。



声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
前の記事:Javaの日付変換次の記事:Javaの日付変換