MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Làm cách nào để đẩy thông báo với angle.js?

Vì bạn đang ở trong ngăn xếp MEAN, đề xuất tiêu chuẩn trong Node sẽ là sử dụng API Socket.IO.

Họ cung cấp ví dụ sau về nhắn tin hai chiều (điều này sẽ tạo điều kiện cho các tin nhắn đẩy của bạn rất dễ dàng):

Khách hàng

<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>

Máy chủ

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);
  });
});

Nó sẽ sử dụng websockets nếu có thể và dự phòng cho kiểm tra dài AJAX hoặc kiểm tra Flash trong các trình duyệt không hỗ trợ websocket.

Về việc tích hợp với Angular, đây là một bài blog hay trên Socket.IO và Angular:

Tôi sẽ viết về cách tích hợp Socket.IO để thêm tính năng thời gian thực vào ứng dụng AngularJS. Trong hướng dẫn này, tôi sẽ tìm hiểu thông qua việc viết một ứng dụng nhắn tin tức thì.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB $ ReplaceAll

  2. MongoDB $ ReplaceOne

  3. Cách cài đặt MongoDB

  4. Làm cách nào để thay đổi loại trường?

  5. Tìm bản ghi mongoDB theo lô (sử dụng bộ điều hợp ruby ​​mongoid)