栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Go语言

Gin框架开发go服务API

Go语言 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Gin框架开发go服务API

1、环境配置 1.1 配置gopath,打开gomod

我在这卡了很久,主要是GOPATH的原因,GOPATH是1.13之前的版本用来管理工程代码用的,本机上所有的代码库和依赖都在GOPATH下。从1.13之后的版本开始,Go推荐使用mod方式管理代码和依赖,打开的方式很简单

# 开启gomod
go env -w GO111MODULE=on

在使用模块的时候,GOPATH 是无意义的,不过它还是会把下载的依赖储存在 퐺푂푃퐴푇퐻/푝푘푔/푚표푑中,也会把푔표푖푛푠푡푎푙푙的结果放在GOPATH/pkg/mod中,也会把goinstall的结果放在GOPATH/bin 中

1.2 配置Gin

得使用国内的代理,阿里云代理实测可用

# 配置代理
go env -w GOPROXY=https://mirrors.aliyun.com/goproxy/,direct
# gin下载安装
go get -u github.com/gin-gonic/gin

# 出现以下输出说明安装成功
go get: added github.com/gin-contrib/sse v0.1.0
go get: added github.com/gin-gonic/gin v1.7.7
go get: added github.com/go-playground/locales v0.14.0
go get: added github.com/go-playground/universal-translator v0.18.0
go get: added github.com/go-playground/validator/v10 v10.10.0
go get: added github.com/golang/protobuf v1.5.2
go get: added github.com/json-iterator/go v1.1.12
go get: added github.com/leodido/go-urn v1.2.1
go get: added github.com/mattn/go-isatty v0.0.14
go get: added github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
go get: added github.com/modern-go/reflect2 v1.0.2
go get: added github.com/ugorji/go/codec v1.2.6
go get: upgraded golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550 => v0.0.0-20220112180741-5e0467b6c7ce
go get: added google.golang.org/protobuf v1.26.0
go get: added gopkg.in/yaml.v2 v2.4.0
2、新建项目 2.1新建工程

这里使用新的go module方式管理,新建工程freedom

go mod init freedom

执行完之后,目录下出现go.mod文件

新建main.go文件,编辑

package main

import (
	"net/http"

	"github.com/gin-gonic/gin"
)

func main() {
	router := gin.Default()
	router.GET("/", func(c *gin.Context) {
		c.String(http.StatusOK, "Hello 你好哇!")
	})
	router.Run(":8080")
}

如果报找不到依赖这个问题

 把gin的依赖加入go.mod文件中即可

go mod edit -require github.com/gin-gonic/gin@latest
go mod tidy 

执行完之后会下载相关的依赖,同时自动在go.mod文件中添加require

如下图所示:

 2.2运行
go run main.go

访问本机的8080端口,可以看到结果

 3、部署到linux服务器 3.1 配置linux的go环境

首先配置linux服务器的go环境,可以参考这篇文章

CentOS安装go_guo_zhen_qian的专栏-CSDN博客_go部署centos

3.2 编译go程序

因为编译的是需要在linux上运行的程序,所以编译命令需要做一些修改,如下

CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build main.go
3.3 上传程序到linux服务器
scp /Usersgit/freedom-road/server/main root@11.22.33.456:/server
3.4 运行程序
./main

直接在浏览器中查看结果

参考文章

Gin下载安装遇到的坑 - tianzhh_lynn - 博客园

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/945482.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号