package main
import "github.com/gin-gonic/gin"
func main() {
//Default返回一个默认的路由引擎
r := gin.Default()
r.GET("/ping", func(c *gin.Context) {
//输出json结果给调用方
c.JSON(200, gin.H{
"message": "pong",
})
})
r.Run() // listen and serve on 0.0.0.0:8080
}
编译运行程序 , 打开浏览器,访问页面显示:
{"message":"pong"}
gin 的功能不只是简单输出 Json 数据 。它是一个轻量级的 WEB 框架,支持 RestFull 风格 API,支持 GET,POST , PUT,PATCH,DELETE,OPTIONS 等 http 方法,支持文件上传,分组路由,Multipart/Urlencoded FORM,以及支持 JsonP , 参数处理等等功能,这些都和 WEB 紧密相关,通过提供这些功能,使开发人员更方便地处理 WEB 业务 。
Gin 实际应用
接下来使用 Gin 作为框架来搭建一个拥有静态资源站点,动态 WEB 站点 , 以及 RESTFull API 接口站点(可专门作为手机 APP 应用提供服务使用)组成的,亦可根据情况分拆这套系统,每种功能独立出来单独提供服务 。
下面按照一套系统但采用分站点来说明 , 首先是整个系统的目录结构,website 目录下面 static 是资源类文件,为静态资源站点专用;photo 目录是 UGC 上传图片目录,tpl 是动态站点的模板 。
当然这个目录结构是一种约定,可以根据情况来修改 。整个项目已经开源,可以访问来详细了解:具体每个站点的功能怎么实现呢?请看下面有关每个功能的讲述:
静态资源站点
一般网站开发中,我们会考虑把 js,css,以及资源图片放在一起,作为静态站点部署在 CDN , 提升响应速度 。采用 Gin 实现起来非常简单,当然也可以使用 net/http 包轻松实现,但使用 Gin 会更方便 。
不管怎么样,使用 Go 开发,我们可以不用花太多时间在 WEB 服务环境搭建上,程序启动就直接可以提供 WEB 服务了 。
【b站go语言网络框架 b站开源框架】package main
import (
"net/http"
"github.com/gin-gonic/gin"
)
func main() {
router := gin.Default()
// 静态资源加载,本例为css,js以及资源图片
router.StaticFS("/public", http.Dir("D:/goproject/src/github.com/ffhelicopter/tmm/website/static"))
router.StaticFile("/favicon.ico", "./resources/favicon.ico")
// Listen and serve on 0.0.0.0:80
router.Run(":80")
}
首先需要是生成一个 Engine,这是 gin 的核心,默认带有 Logger 和 Recovery 两个中间件 。
router := gin.Default()
StaticFile 是加载单个文件,而 StaticFS 是加载一个完整的目录资源:
func (group *RouterGroup) StaticFile(relativePath, filepath string) IRoutes
func (group *RouterGroup) StaticFS(relativePath string, fs http.FileSystem) IRoutes
这些目录下资源是可以随时更新,而不用重新启动程序 。现在编译运行程序,静态站点就可以正常访问了 。
go语言框架有的不支持windows根据资料显示b站go语言网络框架,go语言框架有b站go语言网络框架的不支持windows,是因为与运行的 Windows 版本不兼容 。那么需要安装与windows兼容的版本 , 即可 。
b站go语言网络框架的介绍就聊到这里吧,感谢你花时间阅读本站内容,更多关于b站开源框架、b站go语言网络框架的信息别忘了在本站进行查找喔 。
推荐阅读
- 微信直播关闭粉丝团,微信直播怎样取消关注
- 如何挑选电商直播平台号,直播平台怎么选
- 模拟恋爱的网页游戏,模拟恋爱的小游戏
- 考驾照科目二模拟游戏,模拟驾驶科目二考试游戏
- linux查看服务命令 linux 查看服务命令
- gis怎么制中国地图,arcmap制作中国地图
- c代码转换为java,c语言转换代码
- phpcms查询正品,正品查询系统
- mysql太慢怎么办 mysql 慢sql