[英]Can't broadcast to clients using Socket.IO
我的node.js服務器有一個間隔設置,可以每60秒調用一次名為“ spawnItem”的函數。 調用此函數時,它將執行以下代碼:
io.sockets.emit("spawn item", {x: 10, y: 10});
每次服務器嘗試執行此操作時,它將立即關閉並顯示:
TypeError:無法調用未定義的方法“ emit”
根據我在網上閱讀的所有內容,應該沒問題。
var util = require("util"),object inspection, etc),
io = require("socket.io"),
Player = require("./Player").Player;
該代碼位於頁面頂部,我認為這是所有需要的內容,還是我錯了? 我在它下面還有socket = io.listen(4339)
。 插座都在下面等配置
我也嘗試過做:
socket.broadcast.emit("spawn item", bla bla bla);
socket.emit("spawn item", bla bla bla);
我的目標是讓服務器告訴客戶端每60秒以某個x,y坐標生成一個項目,但是我無法讓服務器發送消息。
謝謝!
您沒有發布很多信息,但是我認為您使用的對象錯誤:
var io = require('socket.io');
io.sockets.emit(...); // Fails, wrong object.
相反,您需要使用listen
返回的對象:
var io = require('socket.io').listen(4339);
io.sockets.emit(...); // Correct use.
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.