golang 简介
Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。
golang前景
适合云计算、微服务、基础后端软件的功能实现。
go语言优点
go是非常年轻的一门语言,“兼具Python 等动态语言的开发速度和C/C++等编译型语言的性能与安全性”,具备强大的标准库,内置垃圾回收机制,属于静态类型语言,因此具备编译检查和编码规范,特别是并发功能实现简单,但功能强大,可使用goroutine和channel轻松实现高并发。
golang web 优势
语法简单:语法简洁,新手入门简单,开发应用性能高。
便于维护:强类型静态语言,便于项目的重构和维护。
部署方便:编译的可执行二进制文件,在执行时,不需要部署环境,把编译文件上传,就完成了项目的部署。
2步实现免费https服务器搭建
代码解析:
步骤1 : 设置请求处理对象http.HandleFunc
http.HandleFunc("/index", Index)
步骤2 : 请求处理函数Index(w http.ResponseWriter, r *http.Request)
func Index(w http.ResponseWriter, r *http.Request) {
_, _ = w.Write([]byte(r.Proto))
}
步骤3 : 生成证书
- 方法1:
(1)在当前目录下生成一个generate_cert.exe的可执行程序
>go build C:\Program Files\Go\src\crypto\tls\generate_cert.go
(2)在当前目录下生成证书(cert.pem)和秘钥(key.pem)
>generate_cert.exe -host localhost
- 方法2:
在当前目录下生成证书(cert.pem)和秘钥(key.pem)
>go run C:\Program Files\Go\src\crypto\tls\generate_cert.go -host localhost
步骤4 : 使用证书
http.ListenAndServeTLS("127.0.0.1:443", "./cert.pem", "./key.pem", nil)
(1)必须使用http.ListenAndServeTLS()
(2)方法中有4个参数:
a、”127.0.0.1:443″,ip:port,其中port是443,因为HTTPS默认使用的就是443端口,这样url输入就可以直接访问,不需要输入端口号
b、”./cert.pem”:为公钥证书,放置在当前目录下了
c、”./key.pem”:为私钥证书,放置在当前目录下了.
d、nil:设置为nil,代表使用默认的多路复用器DefaultServeMux.
步骤5 : 启动服务器
>go build main.go
>main.exe
步骤6 : 访问服务器