gin框架热加载

为gin框架配置热加载,可以引入codegangsta/gin工具

1.安装gin框架热加载工具

go install github.com/codegangsta/gin@latest

2.配置gin环境变量

在/etc/profile中添加($GOPATH是已经配置好的go目录,即gin会被安装的位置)
export PATH=$PATH:$GOPATH/bin

完整配置参考

export GOROOT=/usr/local/go        ##Golang安装目录
export PATH=$GOROOT/bin:$PATH
export GOPATH=/home/liubai/golang       ##Golang项目目录
export PATH=$PATH:$GOPATH/bin

3.测试是否安装成功

# 正常返回则安装成功
gin help

返回示例

liubai@liubai:~/golang/src/AIAssistant$ go help
Go is a tool for managing Go source code.

Usage:

        go <command> [arguments]

The commands are:

        bug         start a bug report
        build       compile packages and dependencies
        clean       remove object files and cached files
        doc         show documentation for package or symbol
        env         print Go environment information
        fix         update packages to use new APIs
        fmt         gofmt (reformat) package sources
        generate    generate Go files by processing source
        get         add dependencies to current module and install them
        install     compile and install packages and dependencies
        list        list packages or modules
        mod         module maintenance
        work        workspace maintenance
        run         compile and run Go program
        telemetry   manage telemetry data and settings
        test        test packages
        tool        run specified go tool
        version     print Go version
        vet         report likely mistakes in packages

Use "go help <command>" for more information about a command.

Additional help topics:

        buildconstraint build constraints
        buildmode       build modes
        c               calling between Go and C
        cache           build and test caching
        environment     environment variables
        filetype        file types
        go.mod          the go.mod file
        gopath          GOPATH environment variable
        goproxy         module proxy protocol
        importpath      import path syntax
        modules         modules, module versions, and more
        module-auth     module authentication using go.sum
        packages        package lists and patterns
        private         configuration for downloading non-public code
        testflag        testing flags
        testfunc        testing functions
        vcs             controlling version control with GOVCS

Use "go help <topic>" for more information about that topic.

4.使用gin启动服务

# 访问4443会被代理到8888 不可重复
gin -p 4443 -a 8888 -b gin-bin --all run

启动后4443和8888均可访问

5.main示例

package main


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


func main() {


    // 创建服务
    ginServer := gin.Default()
    ginServer.GET("/ping", func(conetext *gin.Context) {
        conetext.JSON(200, gin.H{
            "message": "ping",
        })
    })


    ginServer.POST("/post", func(ctx *gin.Context) {
        ctx.JSON(200, gin.H{
            "message": "post",
        })
    })

    // 监听并在 0.0.0.0:8888 上启动gin服务
    ginServer.Run(":8888")
}

6.启停脚本

gin -p 4443 -a 8888 -b gin-bin --all run

#!/bin/bash

# 检查是否有程序在监听 4443 端口
#!/bin/bash

# 检查是否有程序在监听 4443 端口 自定义的gin端口
if lsof -i :4443 | grep LISTEN | grep -q 'gin'; then
    # 获取监听 4443 端口的程序名为 gin,使用 kill -9 终止该程序
    pid=$(lsof -i :4443 | grep LISTEN | grep 'gin' | awk '{print $2}')
    kill -9 $pid
    echo "进程 $pid 已被终止"
else
    echo "未找到监听 4443 端口且名称为 gin 的程序"
fi

# 检查是否有程序在监听 8888 端口 自定义的服务端口
if lsof -i :8888 | grep LISTEN | grep -q 'gin-bin'; then
    # 获取监听 4443 端口的程序名为 gin,使用 kill -9 终止该程序
    pid=$(lsof -i :8888 | grep LISTEN | grep 'gin-bin' | awk '{print $2}')
    kill -9 $pid
    echo "进程 $pid 已被终止"
else
    echo "未找到监听 8888 端口且名称为 gin-bin 的程序"
fi

最新的Go语言Gin框架教程可以按照以下步骤进行操作: 1. 首先,使用命令`go mod init my_gin`初始化一个新的Go模块\[1\]。 2. 为了加快下载速度,可以使用国内代理,执行命令`go env -w GOPROXY=https://goproxy.cn`\[1\]。 3. 下载Gin框架,执行命令`go get -u github.com/gin-gonic/gin`\[1\]。 4. 为了实现加载,可以使用`fresh`工具。首先,执行命令`go get github.com/pilu/fresh`\[2\]。 5. 如果在使用`fresh`命令时遇到了“不是内部或外部命令,也不是可运行的程序或批处理文件。”或者“command not found: fresh”的问题,可以按照以下解决方案进行操作\[3\]: - 打开终端,使用`go env`命令查看`GO111MODULE`的值。如果是`auto`,将其改为`on`。 - 执行命令`go install github.com/pilu/fresh@latest`。 - 执行命令`go mod init <你的项目名称>`。 - 执行命令`go get github.com/pilu/fresh`。 - 然后可以直接使用`fresh`命令进行加载。 另外,还可以使用`gin`工具来运行Gin框架,执行命令`go get github.com/codegangsta/gin`,然后使用`gin run main.go`命令来启动应用程序\[3\]。 关于Gin框架中的路由,可以参考相关文档进行学习和了解\[3\]。 希望以上信息对你有帮助! #### 引用[.reference_title] - *1* *2* [go下载gin框架](https://blog.csdn.net/qq_40787608/article/details/129889518)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] - *3* [Golang gin框架](https://blog.csdn.net/book_longker/article/details/123760632)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^insert_down1,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

一回生二回熟

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值