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快速入门之安全策 ...
随机推荐
- 联盛德 HLK-W806 (十三): 运行FatFs读写FAT和exFat格式的SD卡/TF卡
目录 联盛德 HLK-W806 (一): Ubuntu20.04下的开发环境配置, 编译和烧录说明 联盛德 HLK-W806 (二): Win10下的开发环境配置, 编译和烧录说明 联盛德 HLK-W ...
- ADD software version display
ADD software version display ADD software version display1. Problem Description2. Analysis3. Solutio ...
- Docker 与 K8S学习笔记(十八)—— Pod的使用
Pod 是一组紧密关联的容器集合,它们共享IPC.Network和UTS namespace,是 Kubernetes 调度的基本单元.Pod 的设计理念是支持多个容器在一个 Pod 中共享网络和文件 ...
- Natasha 4.0 探索之路系列(三) 基本的动态编译
Natasha 的设计 动态编译 Roslyn 为开发者提供了动态编译的接口, 允许我们以 C# 代码来编写 Emit 或 表达式树生成的程序集, 但是完成一个编译需要诸多步骤, 用户参与的操作也很多 ...
- 沁恒CH32F103C8T6的开发和烧录配置说明
概述 CH32F1系列是沁恒生产的32位Cortex-M3 MCU, 片上集成了时钟安全机制.多级电源管理. 通用DMA控制器等. 此系列具有 2 路 USB2.0接口.多通道 TouchKey. 1 ...
- was 9.0 install
Installation Manager 下载地址 https://www-945.ibm.com/support/fixcentral/swg/downloadFixes?parent=ibm~Ra ...
- C++ 类对象内存模型分析
编译环境:Windows10 + VS2015 1.空类占用的内存空间 类占内存空间是只类实例化后占用内存空间的大小,类本身是不会占内存空间的.用sizeof计算类的大小时,实际上是计算该类实例化后对 ...
- 使用OpenFileDialog打开文件和使用FolderBrowserDialog选定文件夹
选定文件夹 string foldPath = ""; FolderBrowserDialog dialog = new FolderBrowserDialog(); dialog ...
- DockerClient端与DockerDaemon的通信安全
DockerClient端与DockerDaemon的通信安全 容器的安全性问题的根源在于容器和宿主机共享内核.如果容器里的应用导致Linux内核崩溃,那么整个系统可能都会崩溃.与虚拟机是不同的,虚拟 ...
- 对于Web性能优化, 了解和经验
我们在发布项目之前压缩CSS和JavaScript源代码,这样文件体积就变小了,用户加载必要资源所花的时间也就更短了. 压缩源码和图片 JavaScript文件源代码可以采用混淆压缩的方式,CSS文件 ...