var socket = io.connect('http://ip:port');
socket.on('connect', function(){});
socket.on('message', function(message) {
some code..
});
socket.on('disconnect', function(){ });
在这里我不想使用硬编码的ip地址。所以我需要从config file.suggest中获取解决这个问题。谢谢。
答案 0 :(得分:0)
您可以将IP / PORT存储在服务器上的配置文件中,然后使用expressjs中的“locals”函数将这些变量传递给前端。
这将使您的视图渲染器可以使用该信息,而渲染器又可以在模板中写入数据。
如何最好地设置配置文件取决于您的特定用例。
# Server Side
app.locals.hosts = {
http: 'localhost:3000',
file: 'localhost:3001',
websocket: 'localhost:2000'
}
# Client Side (rendered via mustache)
var socket = io.connect('ws://#{hosts.websocket}');