sql >> データベース >  >> NoSQL >> MongoDB

angle.jsで通知をプッシュする方法は?

    MEANスタックを使用しているため、Nodeでの標準的な推奨事項は、Socket.IOAPIを使用することです。

    これらは、双方向メッセージングの次の例を提供します(これにより、プッシュメッセージが非常に簡単になります):

    クライアント

    <script src="/socket.io/socket.io.js"></script>
    <script>
      var socket = io.connect('http://localhost');
      socket.on('news', function (data) {
        console.log(data);
        socket.emit('my other event', { my: 'data' });
      });
    </script>
    

    サーバー

    var app = require('http').createServer(handler)
      , io = require('socket.io').listen(app)
      , fs = require('fs')
    
    app.listen(80);
    
    function handler (req, res) {
      fs.readFile(__dirname + '/index.html',
      function (err, data) {
        if (err) {
          res.writeHead(500);
          return res.end('Error loading index.html');
        }
    
        res.writeHead(200);
        res.end(data);
      });
    }
    
    io.sockets.on('connection', function (socket) {
      socket.emit('news', { hello: 'world' });
      socket.on('my other event', function (data) {
        console.log(data);
      });
    });
    

    可能な場合はWebSocketを使用し、WebSocketがサポートされていないブラウザーではAJAXロングポーリングまたはFlashポーリングにフォールバックします。

    Angularとの統合については、Socket.IOとAngularに関する優れたブログ投稿があります:

    Socket.IOを統合してAngularJSアプリケーションにリアルタイム機能を追加する方法について説明します。このチュートリアルでは、インスタントメッセージングアプリの作成について説明します。



    1. MongoDBでの遅いクエリの分析

    2. RedisをJHipsterCacheConfigurationエラーに統合する

    3. Javaドライバーを使用してMongoDBに最後に挿入されたドキュメントIDを取得する

    4. フィールド''のオブジェクト'target'のフィールドエラー:拒否された値[];コード[typeMismatch.target。、typeMismatch。、typeMismatch.java.util.Date、typeMismatch]