我試圖添加一個通知系統。如果用戶登錄並執行操作,則應該將通知發送給其他用戶(如果他已登錄)。我已使用express在node.js中創建了我的應用程序。我知道我必須使用套接字,但事件需要如何處理?如果有人能讓我知道我可以遵循這個任務的任何參考或樣本?使用node.js,express,套接字實現通知系統
0
A
回答
1
我只是做了類似的事情和處理這樣的:
io.js - 中央的node.js文件,我處理新connnections和存儲IO
var io = require('socket.io')();
io.on('connection', function(socket){
console.log("Socket established with id: " + socket.id);
socket.on('disconnect', function() {
console.log("Socket disconnected: " + socket.id);
});
});
module.exports = io;
someroute.js - 我想在node.js服務器應用程序中發送消息
var appRoot = require('app-root-path');
var io = require(appRoot + '/server/io');
/*your code, somwhere you will call the
* function below whenever you want to emit
* the 'user_did_action' event:
*/
if(user.didNewStuff()){
emitUserAction(user);
}
var emitUserAction = function(user){
io.sockets.emit('user_did_action', user);
};
個client_javascript.js - 某些客戶端JS(在我的情況下角,但它事doesent),導入socket.io LIB,然後訪問某個客戶端這樣的:
/*connect to the server*/
var socket = io.connect();
/*do something wen the event 'user_did_action'
* is received, just invoke the callback
*
*in the function param data, you will have the same
*data you emitted earlier in the server,
*in this example the user object!*/
socket.on('user_did_action', myFunctionToHandleTheEvent(data));
相關問題
- 1. HTML5 Websocket + Node.js實時通知系統
- 2. 實時通知系統
- 3. Django - 實時通知系統
- 4. 實施通知系統
- 5. 實施通知系統
- 6. 實施通知系統
- 7. 如何使用jQuery實現通知系統?
- 8. 使用PHP棘輪網絡套接字管理服務器通知系統
- 9. 的Node.js通過套接字
- 10. Node.js/Express - 如何通過方法訪問會話數據(使用套接字)?
- 11. Node.js的在線/離線通知,如Facebook通知系統
- 12. 通知系統模型套裝
- 13. 通知系統
- 14. 通知系統
- 15. 推送通知與Web套接字實現實時聊天應用程序?
- 16. '套接字'系統調用'SOCK_RAW'選項
- 17. 如何實現嵌套評論系統?
- 18. Cordova/PhoneGap推送通知與使用套接字通知
- 19. 實現情境感知對話系統
- 20. 實時通知node.js
- 21. 如何實施通知系統?
- 22. Rails的王菲實時通知系統
- 23. 通知系統像Facebook和實時
- 24. 架構設計和實現的通知系統使用Node.js的socket.io和傳入的消息
- 25. PHP通知系統
- 26. Python:通知系統?
- 27. AngularJS通知系統
- 28. 通過套接字連接到遠程系統
- 29. 使用套接字在Python中連接兩個系統
- 30. 如何在nodejs中實現通知系統?
目前還不清楚是哪一部分失蹤。在我的聊天中,事件由socket.io客戶端處理,我使用[Notification](https://developer.mozilla.org/en/docs/Web/API/notification)API將其顯示給用戶([相關的代碼](https://github.com/Canop/miaou/blob/master/src%2Fmain-js%2Fmiaou.horn.js#L65)) –
@NKMY你嘗試過什麼嗎?或者你想知道套接字如何工作? –
您可以閱讀這篇文章作爲參考http://www.gianlucaguarini.com/blog/nodejs-and-a-simple-push-notification-server/ 總之,您需要維護全球用戶在線列表和他們各自的插座連接。因此,無論何時用戶進行任何操作,您都可以使用全局列表來選擇您的目標用戶。 –