Go1.17.6的RESTfulAPI,之前已经安装好了。本节继续关注官网学习基于Gin开发RESTfulAPI。为环境做好准备。就是ginrest的文件夹,然后用vscode打开这个文件夹,继续用cmd命令进入E:\ginrest文件夹,然后执行gomodinit命令这时候会出现一个名为go.mod的文件在这个文件夹下生成新建一个文件main.go基础准备好后,我们需要准备程序应该有的入口,即新建一个main.go文件,在这个文件中添加包名packagemain,并继续创建一个名为album的新struct,go中的struct类似于C#中的类。在Go中,定义一个struct的标准格式如下typenamestruct{fieldnamefieldtype}我们在struct中添加一些字段属性typealbumstruct{idstring`json:"id"`Titlestring`json:"title"`Artiststring`json:"artist"`Pricefloat64`json:"price"`}我们可以看到别名在类型后面用json标注,主要作用是将struct序列化成json时,序列化为这个别名,如果没有别名,则按属性名显示。我新建一个专辑数组,主要是为后续读取数据做准备varalbums=[]album{{Id:"1",Title:"BlueTrain",Artist:"JohnColtrane",Price:56.99},{id:“2”,标题:“Jeru”,艺术家:“GerryMulligan”,价格:17.99},{Id:“3”,标题:“SarahVaughan和CliffordBrown”,艺术家:“SarahVaughan”,价格:39.99},}在使用Gin之前基本的准备工作已经做好了,现在进入主题,开始使用Gin,导入Gin包,现在使用import在main.go中导入包并编写main方法,使用在主要方法中,gin创建一个简单的Http服务器import"github.com/gin-gonic/gin"funcmain(){router:=gin.Default()router.Run("0.0.0.0:8080")}这里是0.0.0.0:8080是监听本机的8080端口,其实也可以直接使用:8080,如:router.Run(":8080"),端口号可以自己调整,如果不指定,默认端口号也是8080,此时通过cmd执行goget下载依赖包装的杜松子酒。这类似于.Net中的Nuget包管理吗?依赖包下载完成后,这时候我们的go.mod文件会被添加到record中,还会多出一个go.sum文件,为我们记录依赖包的版本信息。至此,我们的程序就可以运行了。这时候我们访问8080端口,服务器会返回404页面未找到。那是因为我们还没有做任何事情。下面继续实现获取(getAlbums)和添加(postAlbums)两个方法。Go语言中的方法与C#有些不同。在C#中大概是这样的。publicList
