分类 Golang 中的文章

Go语言 | 你还在这样获取文件的大小吗?

在项目中,我们可能会需要获取一个文件的大小,在Golang(Go语言)中,有很多方法来获取一个文件的大小,看看你是否还在用最慢的方式。 Read字节方式 第一种,是最直观会想到的,也就是打开文件,把文件读取一遍。 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 func main() { file,err:=os.Open("water") if err ==nil { sum := 0 buf:=make([]byte,2014) for { n,err:=file.Read(buf) sum+=n if err==io.EOF { break }……

阅读全文

Golang Gin 实战(十三)| 中间件详解看这一篇就够了

在Gin的整个实现中,中间件可谓是Gin的精髓。一个个中间件组成一条中间件链,对HTTP Request请求进行拦截处理,实现了代码的解耦和分离,并且中间件之间相互不用感知到,每个中间件只需要处理自己需要处理的事情即可。今天我们就通过这篇文章,详细的介绍Gin中间的使用和原理。 通过……

阅读全文

Golang Gin 实战(十二)| ProtoBuf 使用和源码分析原理实现

ProtoBuf最近几年也算比较流行,它是一种语言无关,平台无关,并且可以扩展,并结构数据序列化的方法。相比JSON/XML这类文本格式的,ProtoBuf是二进制的,更快更高效。对于这么好的特性,Gin当然是支持的。 通过这篇文章你可以学到: ProtoBuf数据结构 ProtoBu……

阅读全文

Go爬虫+WordPress每月躺赚上千元(合法合规实战)

概览 感谢Tomic哥的实战经验分享,6000字大章。我们只要选择好一个垂直分类,Tomic哥的经验完全可以复制(合法合规)。 ​前两天飞雪大大发了一篇关于阿里云618活动的文章,给大家推荐了非常优惠的云主机。我就和飞雪大大聊:建议他写一篇关于云主机实战的文章,因为大家可能不知道买了……

阅读全文

Golang Gin 实战(十一)| HTML模板渲染

终于又到一个重头戏了。在整个服务端开发中,一个是API,一个就是网页,当前的API大部分都是通过JSON提供了,而网页就是通过HTML提供了。所以对于这么大的需求,Gin当然不会忘记,为我们提供了很多方便的操作。 html/template 在聊Gin的HTML渲染之前,先聊聊Golang(Go语言)内置的……

阅读全文

Golang Gin 实战(十)| XML渲染

虽然当前基于XML的API应用不多,但是Gin也提供了便捷的XML生成,可以把这些用于需要XML的地方,比如网站的sitemap,rss订阅的atom等。 来个map试试 1 2 3 4 5 6 7 func main() { r := gin.Default() r.GET("/xml", func(c *gin.Context) { c.XML(200, gin.H{"wechat": "flysnow_org", "blog": "www.flysnow.org"}) }) r.Run(":8080") } 在Gin中,要生成XML,只需要使用context.XML方法……

阅读全文

Golang Gin 实战(九)| JSONP跨域和劫持

浏览器都遵循同源策略,也就是说位于www.flysnow.org下的网页是无法访问非www.flysnow.org下的数据的,比如我们常见的AJAX跨域问题。 要解决跨域问题的办法有CORS、代理和JSONP,这里结合Gin,主要介绍JSONP模式 JSONP原理 JSONP可以跨域,……

阅读全文

Golang Gin 实战(八)| JSON渲染输出

现在开发API,所输出的基本上都是JSON格式的内容,相比比较旧的XML格式,JSON轻便、简洁、易于传输,所以现在的API使用非常多。 Gin对于API JSON的支持非常友好,可以让我们非常方便的开发一个基于JSON的API。 快速入门 1 2 3 4 5 6 7 func main() { r := gin.Default() r.GET("/hello", func(c *gin.Context) { c.JSON(200, gin.H{"message": "hello world"}) }) r.Run(":8080")……

阅读全文

Golang Gin 实战(七)| 分组路由源代码分析

在我们开发定义路由的时候,可能会遇到很多部分重复的路由: /admin/users /admin/manager /admin/photo 以上等等,这些路由最前面的部分/admin/是相同的,如果我们一个个写也没问题,但是不免会觉得琐碎、重复,无用劳动,那么有没有一种更好的办法来解决呢?Gin为我们提供的解决方案就是分组路由 分组路由 类似以上示例,就是分好……

阅读全文

最近文章

福利派送

分类

标签

其它