如何使用socket.io从客户端调用服务器端功能? [英] How to invoke server-side function from client-side using socket.io?
本文介绍了如何使用socket.io从客户端调用服务器端功能?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
使用express框架。我想要调用位于server.js(使用express.js设置)的函数init(){//}
客户端包含代码
< script src =/ socket.io/socket.io.js >< /脚本>
< script>
var socket = io.connect('http:// localhost');
< / script>
但是我想调用 init()
来自< a href ='这里是什么'>单击以在客户端的index.html上的服务器< / a>
上调用Init()。
编辑:
< a href ='javascript:callInit();'>获取Init< / a>
调用函数callInit()在
< script>函数callInit(){socket.emit('init','data'); }
但是`socket.emit('init','data');不执行。我不明白为什么?
解决方案
Client.js
< script src =/ socket.io/socket.io.js\"></script>
< script>
var socket = io.connect('http:// localhost');
$(#urAnchorTagId)。click(function(){
socket.emit('urEvent','urData');
});
< / script>
Server.js
var $ app = express();
var server = http.createServer(app);
var io = require('socket.io')。listen(server);
server.listen(8080);
io.sockets.on('connection',function(socket){
socket.on('urEvent',function(data){
function init(){
/ / ur task
};
});
});
Using express framework. I want to invoke function init() { // }
which resides in server.js (set up using express.js)
The client side includes code
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost');
</script>
But i want to invoke init()
from <a href='WHAT TO PUT HERE'> Click to invoke Init() on server </a>
on index.html on client side.
Edit:
<a href='javascript:callInit();'> Get Init </a>
calls the function callInit() above in
<script> function callInit() { socket.emit('init', 'data'); }
But `socket.emit('init', 'data'); does not execute. I can't understand why?
解决方案
Client.js
<script src="/socket.io/socket.io.js"></script>
<script>
var socket = io.connect('http://localhost');
$("#urAnchorTagId").click(function(){
socket.emit('urEvent','urData');
});
</script>
Server.js
var app = express();
var server = http.createServer(app);
var io = require('socket.io').listen(server);
server.listen(8080);
io.sockets.on('connection', function (socket) {
socket.on('urEvent', function (data) {
function init(){
//ur task
};
});
});
这篇关于如何使用socket.io从客户端调用服务器端功能?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文