标签:#Go
19 篇文章
Go 语言获取 IP 地址及对应城市信息
Go 语言获取 IP 地址及对应城市信息
使用 Go 语言结合 ip2region 库获取客户端 IP 地址及对应城市信息。文章包含 Gin 框架的示例代码,演示如何获取 IP 地址,并使用 ip2region 库进行 IP 地址到城市信息的查询。
Go 语言 fmt.Printf 函数详解
Go 语言 fmt.Printf 函数详解
本文详细讲解 Go 语言 fmt.Printf 函数的用法,包括占位符 %v 的含义和使用场景,以及与 log.Printf 的区别。
Go 语言 Gorm 数据库 ORM 框架使用问题及解决方案
Go 语言 Gorm 数据库 ORM 框架使用问题及解决方案
本文总结了在 Go 语言中使用 Gorm 数据库 ORM 框架时遇到的几个问题及解决方案,包括数据库表头和列名转换、设置数据库最大线程和连接池、处理 JSON 类型数据以及指定表名和禁用表名复数等。
常用 HTTP 接口测试工具
常用 HTTP 接口测试工具
本文介绍了几款常用的 HTTP 接口测试工具,包括 JMeter、Postman、wrk、ab 和 Vegeta,并简要说明了它们的特性和使用方法。
Gin 框架的文件上传和下载
Gin 框架的文件上传和下载
Gin 框架的文件上传和下载功能详解,包含代码示例和官方文档链接。
Go 语言文件读取与处理
Go 语言文件读取与处理
本文介绍使用 Go 语言读取和处理文件的方法,包括使用 bufio.Scanner 逐行读取文件内容,以及获取当前执行程序路径的方法。
GoLand: 调整可编辑文件大小
GoLand: 调整可编辑文件大小
使用 GoLand 打开大文件时,如果只能进入只读模式而无法编辑,可以通过修改 GoLand 的自定义属性 `idea.max.intellisense.filesize` 来解决此问题。
Go 后台运行方法
Go 后台运行方法
本文介绍几种 Go 程序后台运行的方法,包括使用 `&` 符号、`nohup` 命令、`screen` 命令以及 go-daemon 库。同时也讲解了如何查看后台运行的 Go 进程,并提供多种后台运行方案的比较和选择建议。
Go log.Fatal 导致程序提前退出的问题
Go log.Fatal 导致程序提前退出的问题
在使用 Go 语言编写代码时,使用 log.Fatal 打印 cmd 命令错误信息导致程序直接退出,无法打印后续的 cmdStdout 和 cmdStderr 信息。log.Fatal 函数会打印错误信息后直接调用 os.Exit(1) 终止程序运行。将 log.Fatal(err) 修改为 log.Println(err) 后问题解决。
Go 并发编程
Go 并发编程
Go 语言并发编程入门教程,讲解如何使用 go 关键字启动并发 goroutine,以及如何使用通道同步并发操作。示例代码演示了如何创建和管理并发任务。
Go 语言 Cron 定时任务详解
Go 语言 Cron 定时任务详解
本文介绍如何在 Go 语言中使用 robfig/cron 包实现定时任务,包括代码示例和对 V3 版本更新的说明。文章还提供了官方文档和其它参考文章的链接,并讲解了如何处理 V3 版本中新增的秒级定时任务配置。
保持 Go 程序持续运行
保持 Go 程序持续运行
本文介绍如何使 Go 程序持续运行,讲解了使用 `signal` 包捕获中断信号以及使用 `select {}` 语句阻塞程序的方法,并介绍了如何使用 `cron` 包实现定时任务。文章包含代码示例,并提供了更深入学习的链接。
Go 语言解决中文乱码问题
Go 语言解决中文乱码问题
Go 语言解决终端输出中文乱码问题,例如使用 `ping` 命令后,通过 Go 程序打印输出结果出现乱码的情况,本文提供了解决方案和代码示例,包含字符集转换的处理方法。
Go 语言交叉编译
Go 语言交叉编译
Go 语言支持交叉编译,可以在一个平台上构建另一个平台的可执行文件。本文介绍了如何在 Mac、Linux 和 Windows 系统下进行 Go 交叉编译,并提供了相应的命令示例,涵盖了不同操作系统和架构的编译方法,例如编译 Linux、Windows 平台的 64 位可执行程序。
Go 语言运行命令行
Go 语言运行命令行
Go 语言运行命令行的几种方法,包含使用 os/exec 包的示例代码,以及一些常用的技巧和注意事项。
Go 获取 HTTP 请求的状态码
Go 获取 HTTP 请求的状态码
Go 语言获取 HTTP 请求状态码的方法,以及如何优化处理大文件请求以提高效率。文章提供代码示例,展示如何使用 resty 库发送请求,并获取状态码,同时讲解如何通过设置 Range header 来限制请求数据大小,从而快速获取状态码。
Go 语言单引号和双引号的区别
Go 语言单引号和双引号的区别
Go 语言中单引号用于表示字符,双引号用于表示字符串。本文通过示例代码解释了单引号和双引号的区别,并说明了为什么在使用字符串时应该使用双引号。
Go 语言切片:一个有趣的 append() 循环 bug
Go 语言切片:一个有趣的 append() 循环 bug
学习 Go 语言切片时遇到的一个有趣 bug:在循环中使用 append() 扩容切片时,循环条件使用 len(slice) 导致无限循环。文章分析了 bug 原因,并提供了修复方案,同时也用 JavaScript 复现了该问题。
JS 与 GoLang 的闭包比较
JS 与 GoLang 的闭包比较
本文比较了 JavaScript 和 Go 语言中闭包的用法,并通过具体的代码示例演示了它们在实现相同功能时的异同。文章还解答了作者在学习 Go 语言闭包时遇到的疑惑,并对 JavaScript 中闭包的理解进行了反思。