一、net包提供了对socket编程的支持
socket编程分服务端和客户端编程,针对服务端可使用函数Listen创建监听服务,对于客户端可使用函数Dial连接服务器
1、常用函数
- Listen: 用于创建监听服务器
- stenPacket:用于创建服务器端连接
- Dial:用于创建与服务器连接
- JoinHostPort:连接地址和端口
- SplitHostort:分割地址和端口
- LookupAddr:查找地址对应主机名
- LookupHost: 根据主机名查看地址
- ParseCIDR:解析CIDR格式IP
2、常用结构体
Interfaces
常用属性
- Index
- MTU
- Name:网卡名
- HardwareAddr:mac地址
- Flags:属性
3、常用函数:
- Interfaces:获取所有网卡
- InterfaceByName:根据网卡名称获取网卡信息
4、常用方法:
- Addrs:获取网卡配置网络地址
- MulticastAddrs:获取网卡广播地址
二、WEB开发
HTTP(HyperText Transfer Protocol, 超文本传输协议) 是访问互联网使用的核心通信协议,也是所有web应用程序使用的通信协议。
消息模型:客户端发送请求消息,服务器返回响应消息。传输层使用具有状态的TCP协议,但HTTP协议本身不具有状态
1、HTTP请求消息分为消息头和消息主体(可选),消息头和消息主体用空白行分隔。
HTTP请求说明:
- 1.消息头第一行由三个以空格分隔的元素组成,分别为HTTP方法、请求的URL和使用的HTTP版本
HTTP方法:
1). GET:用于获取资源,参数通过URL查下字符串方式提交给服务器,无消息主体
2). POST:用于执行操作,参数可以通过URL查下字符串方式和消息主体提交给服务
3). HEAD:用于检测资源是否存在,与GET类似,区别在于在响应消息中返回的消息主体为空
4). TRACE:用于诊断,可判断客户端和服务器之间是否存在代理服务器,原理:服务器在响应主体中返回收到的请求消息的具体内容
5). OPTIONS:用于要求服务器报告对某一资源有效的HTTP方法,服务器常返回Allow消息头的响应,并列出所有有效的方法
6). PUT:使用请求主体中的内容向服务器上传指定的资源
7). DELETE:用于删除资源8). CONNECT:
请求URL:用于指定请求的资源名称以及查下参数
使用的HTTP版本:常用1.0和1.1版本,在1.1版本中请求消息中必须包含Host请求头
- 2.其他
Host:指定请求访问的主机名,当多个web站点部署在同一台主机上时需要使用Host消息头
User-Agent:指定客户端软件的信息,不如浏览器类型和版本、操作系统类型和版本等
Referer:表示发出请求的原始URL
Cookie:提交服务器想客户端发布的其他参数
Server:旗标,指明使用的Web服务器软件
Set-Cookie:设置cookie信息,在随后向服务器发送的请求中由Cookie消息头返回
Content-Type:指定消息主体类型
Content-Length:指定消息主体的字节长度