2.go-GIN快速入门
一、go mod安装
1、为什么要安装go mod
在项目中需要某个依赖包,必须使用go get安装,否则运行go run main.go会报错。这种方式在依赖包较多时不便于管理,于是在go1.11版本就有了go mod。go mod是go的包管理工具,使用go mod后,无需把所有项目放在$GOPATH/src,项目可以放在任何位置
go get有时下载某个插件的时候需要FQ,如果你的电脑没有FQ的话是安装不上去的,比如:go get -u github.com/gin-gonic/gin,,因为它有连接到google的文件,所以我们需要配置go mod,当然你也可以FQ。
2、 go mod安装
第一步:在环境变量中配置环境变量
export GO111MODU=on
export GOPROXY=https://goproxy.io
配置好以后让配置生效
source ~/.bash_profile
第二步:在idea中配置启用go module

添加环境变量


配置好了。
3. 使用go mod创建项目
go mod init 项目名
在src目录下,我们创建一个叫api的项目
mkdir api
在根目录下执行
go mod init api
会看到如下输出
go: creating new go.mod: module api
go: to add module requirements and sums:
go mod tidy
表示module初始化成功了,在目录下生成go.mod文件。
包含go.mod文件的目录称为模块根,go.mod 文件的出现定义了它所在的目录为一个模块,该模块下的模块导入其他模块都以它为参照,如import api/xxx
一、gin安装
第一步:下载gin
下载之前要配置好环境变量和go mod,不然可能下载不下来
go get -u github.com/gin-gonic/gin

第二步:简单的http请求
1.新建一个hello项目
2.在项目下添加hello.go文件,文件内容如下:
package main
import "github.com/gin-gonic/gin"
func main() {
// gin.Default()是实例化一个默认的gin示例,便于我们操
r := gin.Default()
// 注册一个GET访问处理函数,路径是根路径
r.GET("/", func(c *gin.Context) {
c.JSON(200, gin.H{
"name":"zhangsan",
"age":"24",
})
})
r.Run(":8080")
}
文件编译报错, 执行go mod tidy下载缺失的插件即可。
3.然后我们运行它,打开浏览器,输入http://localhost:8080/就可以看到如下内容:
{
"age": "24",
"name": "zhangsan"
}
至此,gin已经能够正常的跑起来了。
2.go-GIN快速入门的更多相关文章
- Golang Module快速入门
前言: 在Golang1.11之前的版本中,官方没有提供依赖和包管理工具.开发者通常会使用vendor或者glide的方式来管理依赖(也有直接使用GOPATH多环境方式),而在Golang1.11之后 ...
- Web Api 入门实战 (快速入门+工具使用+不依赖IIS)
平台之大势何人能挡? 带着你的Net飞奔吧!:http://www.cnblogs.com/dunitian/p/4822808.html 屁话我也就不多说了,什么简介的也省了,直接简单概括+demo ...
- SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=》提升)
SignalR快速入门 ~ 仿QQ即时聊天,消息推送,单聊,群聊,多群公聊(基础=>提升,5个Demo贯彻全篇,感兴趣的玩才是真的学) 官方demo:http://www.asp.net/si ...
- 前端开发小白必学技能—非关系数据库又像关系数据库的MongoDB快速入门命令(2)
今天给大家道个歉,没有及时更新MongoDB快速入门的下篇,最近有点小忙,在此向博友们致歉.下面我将简单地说一下mongdb的一些基本命令以及我们日常开发过程中的一些问题.mongodb可以为我们提供 ...
- 【第三篇】ASP.NET MVC快速入门之安全策略(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【番外篇】ASP.NET MVC快速入门之免费jQuery控件库(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- Mybatis框架 的快速入门
MyBatis 简介 什么是 MyBatis? MyBatis 是支持普通 SQL 查询,存储过程和高级映射的优秀持久层框架.MyBatis 消除 了几乎所有的 JDBC 代码和参数的手工设置以及结果 ...
- grunt快速入门
快速入门 Grunt和 Grunt 插件是通过 npm 安装并管理的,npm是 Node.js 的包管理器. Grunt 0.4.x 必须配合Node.js >= 0.8.0版本使用.:奇数版本 ...
- 【第一篇】ASP.NET MVC快速入门之数据库操作(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
- 【第四篇】ASP.NET MVC快速入门之完整示例(MVC5+EF6)
目录 [第一篇]ASP.NET MVC快速入门之数据库操作(MVC5+EF6) [第二篇]ASP.NET MVC快速入门之数据注解(MVC5+EF6) [第三篇]ASP.NET MVC快速入门之安全策 ...
随机推荐
- kafka学习笔记(五)kafka的请求处理模块
概述 现在介绍学习一下kafka的请求处理模块,请求处理模块就是网络请求处理和api处理,这是kafka无论是对客户端还是集群内部都是非常重要的模块.现在我们对他进行源码深入探讨.当我们说到 Kafk ...
- winfrom 双缓冲
在窗体load函数中 this.DoubleBuffered = true; //控件,需要反射的方式设置 Type dgvType = this.dgv.GetType(); PropertyInf ...
- golang中的接口值
package main import ( "bytes" "fmt" "io" ) // 此处的w参数默认是一个空接口,当传递进来buf参 ...
- java-异常-异常捕捉及多catch情况(try-catch)
1 package p1.exception; 2 3 4 /* 5 * 异常处理的捕捉形式: 6 * 这是可以对异常进行针对性处理的方式. 7 * 8 * 具体格式是: 9 * try{ 10 * ...
- java代码实现调用短信接口,发送短信验证。
一.代码示例 package com.aaa.zxf.login; import org.apache.commons.httpclient.HttpClient; import org.apache ...
- Matplotlib 绘图秘籍·翻译完成
原文:Matplotlib Plotting Cookbook 协议:CC BY-NC-SA 4.0 欢迎任何人参与和完善:一个人可以走的很快,但是一群人却可以走的更远. 在线阅读 ApacheCN ...
- git命令行-新建分支与已提交分支合并
例如要将A分支的一个commit合并到B分支: 首先切换到A分支 git checkout A git log 找出要合并的commit ID : 例如 325d41 然后切换到B分支上 git ch ...
- 有向图子图 DAG 数量
考虑 \(\tt DP\),朴素的想法是令 \(f_S\) 表示 \(S\) 这个导出子图将边定向集合构成 \(\tt DAG\) 的方案数. 转移可以考虑剥去所有入度为 \(0\) 的点,那么我们就 ...
- XML 中如何输入回车换行
XML 中如何输入回车换行? XML 特殊字符: 下面的字符在 [XML]中被定义为 空白(whitespace)字符: 空格 ( ) Tab ( ) 回车 ( ) 换行 ( ) XML 中如何输入回 ...
- Linux添加用户组和添加用户
1.用户组 添加组:groupadd 组名 [root@Server-n93yom ~]# groupadd dev [root@Server-n93yom ~]# cat /etc/group | ...