Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/AutoBingo/Gin-IPs
/ functions
Functions
90 in github.com/AutoBingo/Gin-IPs
⨍
Functions
90
◇
Types & classes
31
↓ 33 callers
Function
Log
(ml MongoLog)
src/utils/database/mongodb/mongo.go:41
↓ 20 callers
Method
Close
关闭连接
src/utils/database/mongodb/mongo.go:106
↓ 9 callers
Function
NewConnection
初始化db连接
src/utils/database/mongodb/mongo.go:97
↓ 4 callers
Method
Start
监听请求、监听信号
src/service/server.go:42
↓ 3 callers
Method
FindOne
查找单个文档, sort 等于1表示 返回最旧的,sort 等于-1 表示返回最新的 * BSON(二进制编码的JSON) D家族 bson.D D:一个BSON文档。这种类型应该在顺序重要的情况下使用,比如MongoDB命令。 M:一张无序的map。它和D是一样的,只是它不保持顺序。 A:一个B
src/utils/database/mongodb/mongo.go:161
↓ 3 callers
Method
InsertOne
插入单个
src/utils/database/mongodb/mongo.go:114
↓ 3 callers
Method
Write
(b []byte)
src/route/middleware/logger.go:59
↓ 2 callers
Function
CoverInterfaceToString
CoverInterfaceToString 将其他类型转换成字符串
test/gin-api.go:143
↓ 2 callers
Method
FindAll
返回查找条件的全部文档记录 project 不能混合 True 和 False
src/utils/database/mongodb/mongo.go:241
↓ 2 callers
Method
GetId
生成方法一定要挂载在某个woker下,这样逻辑会比较清晰 指定某个节点生成id
src/utils/uuid/uuid.go:51
↓ 2 callers
Method
InitError
(msg string)
src/configure/gin_config.go:34
↓ 2 callers
Method
InsertMany
插入多个文档
src/utils/database/mongodb/mongo.go:131
↓ 2 callers
Method
WriteString
(s string)
src/route/middleware/logger.go:63
↓ 2 callers
Function
destroyMgoPool
()
src/service/reload.go:119
↓ 2 callers
Function
insertInstances
(instArr []interface{})
src/dao/insert_db.go:11
↓ 2 callers
Method
lazyinit
()
src/route/request/lazy_init_v10.go:37
↓ 1 callers
Method
CollectionCount
快速统计集合中所有文档的数量
src/utils/database/mongodb/mongo.go:283
↓ 1 callers
Function
CreatePool
连接池创建
src/utils/database/mongodb/mongo.go:57
↓ 1 callers
Method
DeleteAll
* 根据条件删除全部 */
src/utils/database/mongodb/mongo.go:325
↓ 1 callers
Method
FindLimit
* 查询多个 sort 等于1表示 返回最旧的,sort 等于-1 表示返回最新的 每次只返回1页 page size 大小的数据 project 不能混合 True 和 False */
src/utils/database/mongodb/mongo.go:191
↓ 1 callers
Function
GetMapKeysSorted
(oriMap map[string]interface{})
test/gin-api.go:164
↓ 1 callers
Method
HandlerSignal
(httpServer *http.Server)
src/service/reload.go:53
↓ 1 callers
Function
InitYaml
根据yaml文件初始化通用配置, 无需输出日志
src/configure/gin_config.go:38
↓ 1 callers
Method
Listen
(graceful bool)
src/service/reload.go:18
↓ 1 callers
Method
LogMongo
()
src/dao/dao.go:57
↓ 1 callers
Function
New
创建 @filePth: 如果路径不存在会创建 @fileName: 如果存在会被覆盖 @std: os.stdout/stderr 标准输出和错误输出
src/utils/log/logger.go:22
↓ 1 callers
Function
NewAPI
(url, ak, sk string)
test/gin-api.go:28
↓ 1 callers
Function
NewSnowWorker
实例化一个工作节点 workerId 为当前节点的id,最大1023
src/utils/uuid/uuid.go:37
↓ 1 callers
Method
ParseError
参数验证之错误提示
src/route/request/parameter.go:15
↓ 1 callers
Method
ParseId
* 将id转换成时间 */
src/utils/database/mongodb/mongo.go:342
↓ 1 callers
Method
Reload
()
src/service/reload.go:95
↓ 1 callers
Method
Request
使用 params 参数尽量使用 POST请求,Get请求可能会导致参数过长截断URL, 当前时间和服务器时间不能相差超过10s
test/gin-api.go:36
↓ 1 callers
Method
UpdateMany
* 更新 filter 返回的所有记录,返回的匹配是指本次查询匹配到的所有数量,也就是最后更新后等于新的值的数量 如果匹配到了(matchCount >= 1) 并且 objectId.IsZero()= false 则是新插入, objectId.IsZero()=true则是更新(更新没有获取到
src/utils/database/mongodb/mongo.go:381
↓ 1 callers
Function
genSignature
签名算法如下 * Signature = HMAC-SHA1('SecretKey', UTF-8-Encoding-Of( StringToSign ) ) ); StringToSign = method + "\n" + URL + "\n" +
src/route/middleware/authentication.go:159
↓ 1 callers
Method
genSignature
(uri string, method string, params map[string]interface{}, nowTS string)
test/gin-api.go:106
↓ 1 callers
Function
getMapKeysSorted
(originMap map[string]string)
src/route/middleware/authentication.go:180
↓ 1 callers
Function
hmacSHA1Encrypt
hmacSHA1Encrypt encrypt the encryptText use encryptKey
src/route/middleware/authentication.go:172
↓ 1 callers
Method
hmacSHA1Encrypt
hmacSHA1Encrypt encrypt the encryptText use encryptKey
test/gin-api.go:97
↓ 1 callers
Function
kindOfData
(data interface{})
src/route/request/lazy_init_v10.go:52
↓ 1 callers
Function
logHandlerFunc
()
src/route/middleware/logger.go:18
↓ 1 callers
Function
methodMapper
(group *gin.RouterGroup, method Method)
src/route/route.go:68
Function
AddRoute
路由解析
src/route/route.go:85
Function
CheckIp
(ipArr []string, low, high int)
src/route/request/check.go:9
Function
CheckOid
自定义参数验证器函数
src/route/request/validator.go:20
Method
Count
根据条件统计集合中文档的数量
src/utils/database/mongodb/mongo.go:291
Method
CreateIndex
创建索引,重复创建不会报错
src/utils/database/mongodb/mongo.go:439
Method
DeleteIndex
TODO 未测试
src/utils/database/mongodb/mongo.go:449
Method
DeleteOne
* 查找并删除一个 sort 等于1表示 删除最旧的,sort 等于-1 表示删除最新的 一般根据 id 查找就会保证删除正确 */
src/utils/database/mongodb/mongo.go:303
Function
DestroyPool
连接池销毁
src/utils/database/mongodb/mongo.go:87
Method
Engine
Engine 返回支持`StructValidator`实现的底层验证引擎
src/route/request/lazy_init_v10.go:32
Function
ErrorIpPattern
排查错误的IP
src/utils/network/network.go:40
Function
FetchAnyIns
返回的是Mongo所有匹配的数据
src/dao/fetch_db.go:13
Function
FetchSecret
(accessKey string)
src/dao/fetch_db.go:28
Function
GetLoginIp
通过向外网发一个UDP请求得到本地默认路由对应的IP地址,排除局域网,UDP本身是无连接的
src/utils/network/network.go:10
Function
Init
()
src/dao/dao.go:23
Function
InitConfigValue
main 调用
src/configure/gin_config.go:112
Method
InitError
(msg string)
src/configure/gin_config.go:104
Function
InitProcess
()
src/utils/daemon/daemon.go:17
Function
InitRouteGroups
()
src/route/route.go:34
Function
InitValidator
()
src/route/request/lazy_init_v10.go:62
Function
InsertHost
(hostArr []models.HostModel)
src/dao/insert_db.go:21
Function
InsertSecret
(secret models.Secret)
src/dao/insert_db.go:55
Function
InsertSwitch
(switchArr []models.SwitchModel)
src/dao/insert_db.go:38
Function
Logger
打印日志
src/route/middleware/logger.go:69
Function
MatchIpPattern
IP地址格式匹配 "010.99.32.88" 属于正常IP
src/utils/network/network.go:29
Function
NewServer
()
src/service/server.go:22
Function
Recovery
日志打印没必要异步处理,一般crash比较少
src/route/middleware/recovery.go:16
Method
Replace
* 替换 filter 返回的1条记录(最旧的) 如果匹配到了(matchCount >= 1) 并且 objectId.IsZero()= false 则是新插入, objectId.IsZero()=true则是更新(更新没有获取到id) ObjectID("000000000000000000
src/utils/database/mongodb/mongo.go:407
Function
SearchIp
(ipArr []string, oid configure.Oid)
src/route/v1/sdk/search_ip/search_ip.go:9
Function
Start
()
src/dao/dao.go:80
Function
TestAPI_Request
(t *testing.T)
test/request_test.go:5
Function
TestDaemon
(t *testing.T)
src/utils/daemon/daemon_test.go:11
Function
TestInsertData
插入数据库数据
test/mock_test.go:24
Function
TestMongo_CollectionCount
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:99
Function
TestMongo_DeleteOne
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:105
Function
TestMongo_FindAll
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:79
Function
TestMongo_FindLimit
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:62
Function
TestMongo_FindOne
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:46
Function
TestMongo_InsertMany
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:39
Function
TestMongo_InsertOne
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:32
Function
TestMongo_ParseId
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:125
Function
TestMongo_Update
(t *testing.T)
src/utils/database/mongodb/mongo_test.go:146
Function
TestNew
(t *testing.T)
src/utils/log/logger_test.go:8
Function
TestWorker_GetId
(t *testing.T)
src/utils/uuid/uuid_test.go:9
Method
UpdateOne
* 更新 filter 返回的第一条记录 如果匹配到了(matchCount >= 1) 并且 objectId.IsZero()= false 则是新插入, objectId.IsZero()=true则是更新(更新没有获取到id) ObjectID("0000000000000000000000
src/utils/database/mongodb/mongo.go:355
Function
Validate
随机生成一个uuid,100是节点的值(随便给一个) * 接口认证模块,根据申请到的 accessKey(公钥)和secretKey(私钥)加密验证 只解析post/put json 和 get/delete url query 的请求,不解析post form的请求 如果时间 expires 字段
src/route/middleware/authentication.go:40
Method
ValidateStruct
ValidateStruct 如果接收到的类型是一个结构体或指向结构体的指针,则执行验证。
src/route/request/lazy_init_v10.go:21
Function
init
()
test/mock_test.go:12
Function
init
()
src/utils/database/mongodb/mongo_test.go:13
Function
main
()
src/main.go:18