Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
OpenDocCN
build-web-application-with-golang
提交
2fa2f98e
B
build-web-application-with-golang
项目概览
OpenDocCN
/
build-web-application-with-golang
通知
2
Star
1
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
B
build-web-application-with-golang
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
2fa2f98e
编写于
12月 18, 2016
作者:
V
vCaesar
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Add 0.8.2.md syntax highlighting
上级
3a403f07
变更
2
隐藏空白更改
内联
并排
Showing
2 changed file
with
10 addition
and
3 deletion
+10
-3
zh/08.1.md
zh/08.1.md
+4
-2
zh/08.2.md
zh/08.2.md
+6
-1
未找到文件。
zh/08.1.md
浏览文件 @
2fa2f98e
...
...
@@ -31,9 +31,11 @@ IPv6是下一版本的互联网协议,也可以说是下一代互联网的协
### Go支持的IP类型
在Go的
`net`
包中定义了很多类型、函数和方法用来网络编程,其中IP的定义如下:
```
Go
type IP []byte
```
在
`net`
包中有很多函数来操作IP,但是其中比较有用的也就几个,其中
`ParseIP(s string) IP`
函数会把一个IPv4或者IPv6的地址转化成IP类型,请看下面的例子:
```
Go
...
...
@@ -71,7 +73,7 @@ IPv6是下一版本的互联网协议,也可以说是下一代互联网的协
func (c *TCPConn) Write(b []byte) (n int, err os.Error)
func (c *TCPConn) Read(b []byte) (n int, err os.Error)
``
``
`
`TCPConn`
可以用在客户端和服务器端来读写数据。
...
...
@@ -419,7 +421,7 @@ Go语言包中处理UDP Socket和TCP Socket不同的地方就是在服务器端
os.Exit(1)
}
}
```
## 总结
通过对TCP和UDP Socket编程的描述和实现,可见Go已经完备地支持了Socket编程,而且使用起来相当的方便,Go提供了很多函数,通过这些函数可以很容易就编写出高性能的Socket应用。
...
...
zh/08.2.md
浏览文件 @
2fa2f98e
...
...
@@ -45,6 +45,8 @@ Go语言标准包里面没有提供对WebSocket的支持,但是在由官方维
WebSocket分为客户端和服务端,接下来我们将实现一个简单的例子:用户输入信息,客户端通过WebSocket将信息发送给服务器端,服务器端收到信息之后主动Push信息到客户端,然后客户端将输出其收到的信息,客户端的代码如下:
```
html
<html>
<head></head>
<body>
...
...
@@ -86,7 +88,7 @@ WebSocket分为客户端和服务端,接下来我们将实现一个简单的
</body>
</html>
```
可以看到客户端JS,很容易的就通过WebSocket函数建立了一个与服务器的连接sock,当握手成功后,会触发WebScoket对象的onopen事件,告诉客户端连接已经成功建立。客户端一共绑定了四个事件。
-
1)onopen 建立连接后触发
...
...
@@ -96,6 +98,8 @@ WebSocket分为客户端和服务端,接下来我们将实现一个简单的
我们服务器端的实现如下:
```
Go
package main
import (
...
...
@@ -136,6 +140,7 @@ WebSocket分为客户端和服务端,接下来我们将实现一个简单的
}
}
```
当客户端将用户输入的信息Send之后,服务器端通过Receive接收到了相应信息,然后通过Send发送了应答信息。
![](
images/8.2.websocket3.png?raw=true
)
...
...
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录