token gin jwt go
go 新建一个自定义包
一、概述 在go中新建一个自定义包供其他包使用。 步骤: 1.新建一个目录 2.目录下新建一个xxx.go文件 3.在xxx.go文件中使用package xxx(包名) 4.此时你的包已经新建好了 5.在需要使用上面包的地方导入即可,如:import "xxxx" ps:如果包中的内容需要对外开放 ......
Go语言接口防并发常用方案
Go语言接口防并发常用方案 原创 枫潇潇兮 程序员技术成长之路 2024-01-09 08:30 发表于福建 听全文 Go语言中处理并发的常见策略涉及了并发原语,如互斥锁(sync.Mutex)、读写锁(sync.RWMutex)、通道(channel)以及原子操作(sync/atomic)。接口( ......
$GOPATH/go.mod exists but should not
一、概述 开发工具:LiteIDE 现象:运行项目报以下异常 $GOPATH/go.mod exists but should not 错误: 进程退出代码 1. 二、解决办法 去掉LiteIDE开发工具中的GOPATH,然后再运行就行了(查看-->选项-->GolangPackage) ......
堆排序Go语言实现
堆排序是利用最大堆的性质将堆顶元素与数组末尾元素互换,然后重新将剩下的HeapSize-1部分的数组维护为最大堆的过程。 首先我们需要知道什么是堆,以及最大堆和最小堆等。 堆是数组,可以被看做是一颗完全二叉树(即任意两个叶子节点的深度相差不超过1且其排列与满二叉树契合),反过来我们也可以说堆是一个完 ......
归并排序和快排的Go语言实现
归并排序和快排都是时间复杂度为n*logn的排序算法,都较好的的利用了分治思想,因此放在一起描述。 上图是我比较喜欢的一副展示归并和快排的示意图,我们可以通过递归来实现上述两个排序算法。 先来说归并排序: 归并排序的本质就是将要排序的数组一层一层的拆分为直到长度为1的单元素数组然后进行逐层归并。 通 ......
冒泡、选择、插入排序的Go语言实现
这三种排序之所以放到一起说,是因为他们都比较基础,其最差时间复杂度皆为O(n²),空间复杂度皆为O(1)。 最差时间复杂度为O(n²)并不意味着他们就一定比快排、归并等排序算法差,因为时间复杂度只是一个理论相关值,实际排序的耗时和数组规模、数组的有序程度以及 比较/交换次数 都有关系。 鉴于算法较为 ......
Go 引入Gin框架并实现Get请求
一、概述 学习一下Go语言,主要为了观察一下其语言特性。了解一下其与Java/Kotlin/C/C++/Python其语言的区别 二、搭建步骤 1.使用LiteIDE新建目录并创建一个.go文件 2.引入Gin库 a.创建mod文件,并下载导入gin go mod init go_workspace ......
Go基础
Go(又称Golang)是Google开发的一种静态强类型、编译型、并发型,并具有垃圾回收功能的编程语言。 —— Go - wikipedia.org 1 Go 安装 最新版本下载地址官方下载 golang.org,当前是 1.21.5。如无法访问,可以在 https://go.dev/dl/ 下载 ......
切换模式 写文章 登录/注册 go语言json技巧忽略某个字段/忽略空值字段
10 人赞同了该文章 忽略某个字段 // 使用json tag指定json序列化与反序列化时的行为 type Person struct { Name string `json:"name"` // 指定json序列化/反序列化时使用小写name Age int64 Weight float64 ` ......
Go语言make与new函数区别
Go语言make与new方法区别 在 Go 语言中,有两个比较雷同的内置函数,分别是 new 和 make 方法,其主要用途都是用于分配相应类型的内存空间。 基本特性 make 在 Go 语言中,内置函数 make 仅支持 slice、map、channel 三种数据类型的内存创建,其返回值是所创建 ......
lc -- 第 121 场双周赛(bfs, 数位dp, python3, go)
简单模拟 class Solution: def missingInteger(self, nums: List[int]) -> int: res = nums[0] for i in range(1, len(nums)): if nums[i] == nums[i - 1] + 1: res ......
Gin框架初体验__Goland操作
前提:搭建好Golang环境 首先新建project,Goland会自动生成go.mod文件。 下载并安装Gin框架,并将其添加到你的项目的Go模块中(引入Gin框架依赖至本地) go get -u github.com/gin-gonic/gin 在这一步,我阻碍了将近一个下午|||^_^,由于类 ......
Go语言控制协程(goroutine)的并发数量,有哪些好的解决方法
Go语言控制协程(goroutine)的并发数量,有哪些好的解决方法 磊丰 Go语言圈 2023-12-07 08:31 发表于广东 听全文 Go语言圈 Go语言开发者的学习好助手,分享Go语言知识,技术技巧,学习与交流Go语言开发经验,互动才有助于技术的提升,每天5分钟,助你GO语言技术快乐成长 ......
go语言结构体,函数与方法
一、定义结构体 go语言自定义数据类型使用 type ,定义结构体使用 type + stuct 关键字 package main import ( "fmt" ) type Cat struct { Name string Age int8 Color string } func main(){ ......
Go语言常见错误| 滥用getters/setters
Go语言常见错误| 滥用getters/setters 原创 云原生Go 源自开发者 2024-01-07 15:33 发表于广东 听全文 源自开发者 专注于提供关于Go语言的实用教程、案例分析、最新趋势,以及云原生技术的深度解析和实践经验分享。 67篇原创内容 公众号 在Go语言编程中,恰如其分地 ......
go
1.GO ENV 查看env值 go env GO111MODULE="on" GOARCH="arm64" ... 设置env Go 1.13 及以上(推荐) # 开启GO mod 和设置go模块代码 $ go env -w GO111MODULE=on $ go env -w GOPROXY=h ......
2024-01-06:用go语言,在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧 在桥上有一些石子,青蛙很讨厌踩在这些石子上 由于桥的长度和青蛙一次跳过的距离都是正整数 我们可以把独木桥
2024-01-06:用go语言,在河上有一座独木桥,一只青蛙想沿着独木桥从河的一侧跳到另一侧 在桥上有一些石子,青蛙很讨厌踩在这些石子上 由于桥的长度和青蛙一次跳过的距离都是正整数 我们可以把独木桥上青蛙可能到达的点看成数轴上的一串整点:0...L 其中L是桥的长度,坐标为 0 的点表示桥的起点, ......
drf之基于自定义表签发token及基于自定义表编写认证类
基于自定义表签发token 1 快速签发和认证 2 定制返回格式和认证 3 自定义登录和认证 4 自定义登录,自定义表 5 自定义认证类 url.py from django.contrib import admin from django.urls import path from rest_fr ......
Go 语言为什么建议多使用切片,少使用数组?
大家好,我是 frank,「Golang 语言开发栈」公众号作者。 01 介绍 在 Go 语言中,数组固定长度,切片可变长度;数组和切片都是值传递,因为切片传递的是指针,所以切片也被称为“引用传递”。 读者朋友们在使用 Go 语言开发项目时,或者在阅读 Go 开源项目源码时,发现很少使用到数组,经常 ......
go SSH远程终端及WebSocket
目前chisel基于tcp http websocket 的ssh 代理!! 所以这个东西不就是可以直接远程登录了吗?就行jumpserver 一样 和chisel 一样使用 ssh go get "github.com/gorilla/websocket" go get "golang.org/x ......
使用Ventoy制作Win to Go和Fedora to Go双系统
这是一次简短的记录 整体的思路实际上是通过虚拟机制作安装好系统的虚拟磁盘文件,然后加载到Ventoy中,从Ventoy启动 Ventoy官方网站 在实现的过程中,首先需要对存储介质(U盘等等,我是用的是固态硬盘盒)进行初始化并安装Ventoy 随后使用虚拟机来安装系统,装在物理机的硬盘上就可以了,大 ......
记录--前端无感知刷新token & 超时自动退出
这里给大家分享我在网上总结出来的一些知识,希望对大家有所帮助 前端无感知刷新token&超时自动退出 一、token的作用 因为http请求是无状态的,是一次性的,请求之间没有任何关系,服务端无法知道请求者的身份,所以需要鉴权,来验证当前用户是否有访问系统的权限。 以oauth2.0授权码模式为例: ......
如何使用Go语言进行数据库操作
如何使用Go语言进行数据库操作 https://www.php.cn/faq/587088.html 引言:Go语言是一种高效且简洁的编程语言,拥有强大的并发能力和优秀的性能表现。在开发过程中,与数据库的交互是一个非常重要的环节。本文将介绍如何使用Go语言进行数据库操作,包括连接数据库、CRUD操作 ......
探索適用於Pokemon Go粉絲的 PGSharp iOS 替代品
PGSharp 是Pokemon Go玩家中的著名工具,尤其是 Android 用戶。 它允許玩家偽裝他們的位置,使他們能夠在不離開家的情況下從世界任何地方捕捉精靈寶可夢。 然而,iOS 用戶經常發現自己需要尋找替代品,因為 PGSharp 主要是為 Android 設計的。 本文探討了一些最佳的 ......
NetCore 获取Token信息
获取Token信息 using Micro.Erp.IServices; using Micro.Erp.Utils; using Micro.Erp.DBFactory; using Micro.Erp.Models; using Microsoft.AspNetCore.Http; using ......
Spring Boot2.x 整合 Shiro (JWT模式)
参考 https://www.jianshu.com/p/9b6eb3308294 https://segmentfault.com/a/1190000014479154 https://blog.csdn.net/Yearingforthefuture/article/details/117384 ......
Go代码测试覆盖率
Go代码测试覆盖率 目录结构 ├── main.go └── main_test.go 代码 // main.go package main import "fmt" func Divide(a, b float64) (float64, error) { if b == 0 { return 0, ......
Go如何优雅的写数据库的单测
Go如何优雅的写数据库的单测 遇到的问题 当你想在代码中测试 Gorm 时,可以考虑使用单元测试或集成测试来确保 Gorm 的功能正常。下面是一个简单的示例,展示了如何编写一个基本的 Gorm 单元测试。 代码目录结构 app config config.yaml conf.go service ......
Gin 项目引入热加载
一、什么是热加载 热加载(Hot Reloading)是指在应用程序运行时,对代码进行修改后,系统能够自动重新加载这些修改,而无需停止和重新启动整个应用程序。这使得开发者能够在不中断应用程序运行的情况下进行代码的调试和修改。 热加载的主要目的是提高开发效率,减少开发过程中的重复操作,以便更快地验证和 ......