Win11系统下搭建Go lang开发环境更换国内源并且体验宇宙最快框架Iris

简介: 最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了[如何在Mac os系统下配置Go lang开发环境](https://v3u.cn/a_id_88),这次我们在Win10系统下进行配置,并且更换国内的安装源,最后再和“全宇宙最快的web框架”--Iris亲密接触一下,对于Iris可能很多朋友并不熟悉,一般Go lang在web开发领域相对著名的框架比如Beego或者Gin都名声在外,这里推荐Iris的原因也并不是因为它源于古希腊女神(彩虹女神)的炫酷名字,而是因为它在goroutine的加持下强大的Go http server的性能。

最近有同学开始尝试接触Go lang,拥抱新技术永远都会是一个好习惯,之前的一篇文章介绍了如何在Mac os系统下配置Go lang开发环境,这次我们在Win10系统下进行配置,并且更换国内的安装源,最后再和“全宇宙最快的web框架”--Iris亲密接触一下,对于Iris可能很多朋友并不熟悉,一般Go lang在web开发领域相对著名的框架比如Beego或者Gin都名声在外,这里推荐Iris的原因也并不是因为它源于古希腊女神(彩虹女神)的炫酷名字,而是因为它在goroutine的加持下强大的Go http server的性能。

首先进入网站下载win10安装包:https://studygolang.com/dl

比之去年,go lang又前进了两个版本,目前的稳定版是1.14.4,发展势头可谓迅猛,但是这里建议还是选择go1.12.12版本,因为很多框架还不支持1.14.4,所以这里推荐的通用的稳定版本号是:go1.12.12.windows-amd64.msi

安装目录推荐安装在c:/go即可。

安装成功后,在Win10的环境变量中,系统应该会自动配置 GOROOT、GOPATH、GOBIN,请确保您的系统中配置了这三个变量,GOPATH可以理解为开发目录,GOROOT是安装目录,GOBIN则是可执行命令目录

此时如果在win10命令行输入命令

go version  
  
go version go1.12.12 windows/amd64

可以打印出版本号的话,说明安装成功。

随后是编辑器的推荐,对于初学者来说,这里还是力推vscode,因为它简单灵活,不需要各种复杂解释器的配置,只需要安装 CodeRunner和Go这两个插件就足以支撑你敏捷编写go lang了

重启vscode

新建test.go

package main  
import "fmt"  
  
func main() {  
    fmt.Println("hello go!")  
}

右键 "Run Code"

编辑器配置好以后,现在我们尝试安装一些基于Go lang的三方库,一般情况下我们使用 go get 来进行安装,它在使用上有点类似于python的pip,但是令人遗憾的是,国内用户无法直接使用它,因为被屏蔽了,所以在安装Iris之前,我们需要针对go get来更换国内源,这里我们使用阿里云的源,在命令行输入下面两个命令

set GO111MODULE=on  
  
set GOPROXY=https://mirrors.aliyun.com/goproxy

开启GO111MODULE模块然后指定代理地址https://mirrors.aliyun.com/goproxy,需要注意的是,如果重启了电脑,你指定源会被复位,所以最好将这两个变量也加入到环境变量的设置中,可以确保永久生效。

之后就可以安心的使用 go get 来安装彩虹女神Iris了

go get -v -u github.com/kataras/iris

阿里云cdn镜像的速度还是非常给力的

安装好以后,可以在go的安装目录新建一个项目文件夹,编写main.go文件

package main  
   
import (  
    "github.com/kataras/iris"  
    "github.com/kataras/iris/middleware/logger"  
    "github.com/kataras/iris/middleware/recover"  
)  
   
func main() {  
    app := iris.New()  
    app.Logger().SetLevel("debug")  
    app.Use(recover.New())  
    app.Use(logger.New())  
    app.Get("/", func (ctx iris.Context){  
        ctx.HTML("你好,女神")  
    })  
   
    app.Run(iris.Addr(":8081"), iris.WithoutServerError(iris.ErrServerClosed))  
}

这里我们让Iris跑在8081端口上,进入main.go所在的目录,敲入命令

go run main.go

在编译过程中,可能会报错一些依赖库未找到,此时不用担心,反复执行go run main.go命令进行依赖库的下载,最后把所有依赖都安装好后,就可以编译成功,最后运行

打开浏览器,访问http://localhost:8081/

那么关于Iris的安装和配置就到这里,以后会分享一些更多关于Iris的开发经验。

相关文章
|
11天前
|
Go API 数据库
[go 面试] 分布式事务框架选择与实践
[go 面试] 分布式事务框架选择与实践
|
26天前
|
自然语言处理 Go 数据处理
云计算自旋锁问题之引入Golang插件系统后iLogtail的输入输出通道和处理能力如何解决
云计算自旋锁问题之引入Golang插件系统后iLogtail的输入输出通道和处理能力如何解决
30 1
|
1月前
|
JSON 中间件 Go
Go语言Web框架Gin介绍
【7月更文挑战第19天】Gin是一个功能强大、高性能且易于使用的Go语言Web框架。它提供了路由、中间件、参数绑定等丰富的功能,帮助开发者快速构建高质量的Web应用。通过本文的介绍,你应该对Gin框架有了初步的了解,并能够使用它来开发简单的Web服务。随着你对Gin的深入学习和实践,你将能够利用它构建更复杂、更强大的Web应用。
|
11天前
|
API Go 数据安全/隐私保护
go-zero微服务框架的静态文件服务
【8月更文挑战第7天】`go-zero` 微服务框架支持多种静态文件服务实现方式。常用方法是利用 `Go` 标准库 `http.FileServer`。通过设置静态文件根目录并使用 `http.StripPrefix` 去除路径前缀,能确保 `/static/` 开头的请求正确返回文件。此外,结合 `go-zero` 的路由机制可更灵活地控制静态文件服务,例如仅在特定 API 路径 `/api/static` 下提供服务,从而实现精细化访问控制。
|
11天前
|
关系型数据库 API Go
[golang]在Gin框架中使用JWT鉴权
[golang]在Gin框架中使用JWT鉴权
|
11天前
|
网络协议 Go
[golang]gin框架接收websocket通信
[golang]gin框架接收websocket通信
|
16天前
|
NoSQL Go API
简洁、轻量级的 Go API 框架
简洁、轻量级的 Go API 框架
20 0
|
2月前
|
JavaScript
vue : 无法加载文件 D:\module\npm_module\npm_modules\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.c
vue : 无法加载文件 D:\module\npm_module\npm_modules\vue.ps1,因为在此系统上禁止运行脚本。有关详细信息,请参阅 https:/go.microsoft.c
|
2月前
|
Go 数据库
Go语言之GORM框架(四)——预加载,关联标签与多态关联,自定义数据类型与事务(完结篇)
Go语言之GORM框架(四)——预加载,关联标签与多态关联,自定义数据类型与事务(完结篇)
|
2月前
|
SQL Go
Go语言之GORM框架(三)——Hook(钩子)与Gorm的高级查询
Go语言之GORM框架(三)——Hook(钩子)与Gorm的高级查询