ha
Search…
关于本socket.io中文文档
socket.IO website
1 指南(Guide)
1-1 介绍(Introduction)
1-2 web框架(The web framework)
1-3 服务HTML(Serving HTML)
1-4 集成 socket.io(Integrating socket.io)
1-5 发送事件(Emiting events)
1-6 广播(Broadcasting)
1-7 作业(Homework)
1-8 获取示例(Getting this example)
2 文档(Docs)
3 客户端-API(Client-API)
4 服务端-API(Server-API)
Powered By
GitBook
1-6 广播(Broadcasting)
下一个目标是让我们从服务器向其他用户发送事件
为了发送一个事件给所有人,
socket.io
给我们提供了
io.emit
:
1
io
.
emit
(
'some event'
,{
for
:
'hey gay! to everyone'
})
Copied!
如果你想向除了某些
socket
以外的所有人发送消息,我们有
broadcasting
广播标志:
1
// 向所有非自己连接的客户端,发送连接数
2
io
.
on
(
'connection'
,(
socket
)
=>
{
3
socket
.
broadcast
.
emit
(
'hi'
)
4
})
Copied!
如图,刷新中间的窗口,服务器则向左右两侧的窗口推送消息:
广播
在这种情况下。为了简单起见,我们会将消息发送给所有人,包括发件人
1
io
.
on
(
'connection'
,(
socket
)
=>
{
2
socket
.
on
(
'chat message'
,(
msg
)
=>
{
3
io
.
emit
(
'chat message'
,
msg
)
4
})
5
})
Copied!
在客户端,我们捕获到聊天消息,将其也包含在页面中,现在客户端的JS代码如下:
1
<
script
>
2
$
(
function
()
{
3
var
socket
=
io
();
4
$
(
'form'
).
submit
(
function
(
e
){
5
e
.
preventDefault
();
// prevents page reloading
6
socket
.
emit
(
'chat message'
,
$
(
'#m'
).
val
());
7
$
(
'#m'
).
val
(
''
);
8
return
false
;
9
});
10
socket
.
on
(
'chat message'
,
function
(
msg
){
11
$
(
'#messages'
).
append
(
$
(
'<li>'
).
text
(
msg
));
12
});
13
});
14
</
script
>
Copied!
这就是完成了我们的聊天应用程序,大约20行代码!它就是这样子:
mp4 :
https://i.cloudup.com/transcoded/J4xwRU9DRn.mp4
Previous
1-5 发送事件(Emiting events)
Next
1-7 作业(Homework)
Last modified
2yr ago
Copy link