webhook

package module
v0.0.0-rc.0 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Aug 6, 2023 License: MIT Imports: 16 Imported by: 0

README

webhook

webhook

✨ 你说得对,但是 webhook 是基于 weibo-webhook 改良的分布式博文收集终端 ✨

文档 · 下载

使用

我没写~(∠・ω< )

Documentation

Index

Constants

This section is empty.

Variables

View Source
var (
	GIT = "https://github.com/"
	API = "https://api.github.com/repos/"
)
View Source
var Monitors = make(monitors)

Functions

func AfterAuthorize

func AfterAuthorize(r *Config)

鉴权后

func Authorize

func Authorize(c *gin.Context)

验证授权

func BeforeAuthorize

func BeforeAuthorize(r *Config)

鉴权前

func BoolUpdate

func BoolUpdate(g Github) bool

布尔更新

func Cors

func Cors(c *gin.Context)

解决跨域问题

参考: https://blog.csdn.net/u011866450/article/details/126958238

func Default

func Default[T comparable](a *T, b T)

设置默认值

func Failed

func Failed(c *gin.Context, code int, message string, data ...any)

返回错误信息

func GetBranches

func GetBranches(c *gin.Context)

获取所有分支

func GetComments

func GetComments(c *gin.Context)

获取所有评论

func GetPosts

func GetPosts(c *gin.Context)

获取 begin 与 end 时间范围内的所有博文

func GetToken

func GetToken(c *gin.Context)

func GetUser

func GetUser(c *gin.Context) *user.User

读取用户

func IndexUpdate

func IndexUpdate(g Github) error

主页更新

func Register

func Register(c *gin.Context)

注册

func Run

func Run(r *Config)

func Submit

func Submit(c *gin.Context)

提交博文

func Succeed

func Succeed(c *gin.Context, data ...any)

返回成功数据

Types

type Config

type Config struct {
	// gin 启动模式
	Debug bool
	// 资源
	Resource
	// 网络
	Network
	// 运行
	Runtime
	// 主页 git 链接 只需填写前三项
	Github
	// 其他参数
	Map gin.H
	// 引擎
	*gin.Engine
}

webhook 配置

type Github

type Github struct {
	*Resource
	Username   string
	Repository string
	Branche    string
	Commit     struct {
		Sha string `json:"sha"`
	} `json:"commit"`
}

func (Github) Check

func (g Github) Check() bool

检查版本是否正确

func (*Github) GetLastCommit

func (g *Github) GetLastCommit() error

获取最新版本

func (Github) Index

func (g Github) Index() string

主页路径

func (Github) NoIndex

func (g Github) NoIndex() bool

判断主页是否存在

func (Github) ToAPI

func (g Github) ToAPI() string

仓库对应 api

func (Github) ToData

func (g Github) ToData() []byte

最后一次提交记录

func (Github) ToGIT

func (g Github) ToGIT() string

转 git

func (Github) ToReference

func (g Github) ToReference() plumbing.ReferenceName

转莫名其妙

func (Github) Version

func (g Github) Version() string

版本文件路径

func (Github) Write

func (g Github) Write() error

写入版本

type Monitor

type Monitor struct {
	Score float64
	Uids  utils.Set[string]
	Posts map[*data.Post]float64
	// contains filtered or unexported fields
}

博文检查器

func (*Monitor) In

func (m *Monitor) In(uid string) bool

判断用户是否已经提交

func (*Monitor) Parse

func (m *Monitor) Parse(post *data.Post)

解析接收到的博文

func (*Monitor) SaveAsBranches

func (m *Monitor) SaveAsBranches()

储存所有分支

type Network

type Network struct {
	// 服务器启动 IP
	Url string
	// 启动端口
	Port int
}

网络

func (Network) Addr

func (n Network) Addr() string

type Resource

type Resource struct {
	// 文件夹路径
	Path string
	// 公开子文件夹名
	Public string
	// 数据库名
	Database string
}

资源

func (Resource) ToPostsDB

func (r Resource) ToPostsDB() gorm.Dialector

func (Resource) ToPublic

func (r Resource) ToPublic() string

func (Resource) ToRoot

func (r Resource) ToRoot(files ...string) string

func (Resource) ToUsersDB

func (r Resource) ToUsersDB() gorm.Dialector

type Runtime

type Runtime struct {
	// 自定义全接口
	//
	// DIY 不为 nil 时仅执行此函数 不会执行下面的鉴权前后函数
	DIY func(r *Config)
	// 鉴权前
	BeforeAuthorize func(r *Config)
	// 鉴权后
	AfterAuthorize func(r *Config)
}

运行环境

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL