升级包依赖
This commit is contained in:
parent
475de09dd0
commit
6f603541b6
5 changed files with 88 additions and 2 deletions
4
go.mod
4
go.mod
|
|
@ -24,8 +24,8 @@ require (
|
||||||
github.com/robertkrimen/otto v0.0.0-20210927222213-f9375a256948 // indirect
|
github.com/robertkrimen/otto v0.0.0-20210927222213-f9375a256948 // indirect
|
||||||
github.com/spf13/cobra v1.2.1 // indirect
|
github.com/spf13/cobra v1.2.1 // indirect
|
||||||
github.com/stretchr/testify v1.7.0
|
github.com/stretchr/testify v1.7.0
|
||||||
github.com/yaoapp/gou v0.0.0-20210929112923-09baf3629b95 // indirect
|
github.com/yaoapp/gou v0.0.0-20210929115559-b1b0614e8d88 // indirect
|
||||||
github.com/yaoapp/kun v0.6.4
|
github.com/yaoapp/kun v0.6.5
|
||||||
github.com/yaoapp/xun v0.5.2 // indirect
|
github.com/yaoapp/xun v0.5.2 // indirect
|
||||||
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect
|
golang.org/x/crypto v0.0.0-20210921155107-089bfa567519 // indirect
|
||||||
golang.org/x/image v0.0.0-20210628002857-a66eb6448b8d // indirect
|
golang.org/x/image v0.0.0-20210628002857-a66eb6448b8d // indirect
|
||||||
|
|
|
||||||
4
go.sum
4
go.sum
|
|
@ -371,6 +371,8 @@ github.com/yaoapp/gou v0.0.0-20210929100518-8de252e7bab8 h1:MPVIqqqF5PV3SEy9a4XN
|
||||||
github.com/yaoapp/gou v0.0.0-20210929100518-8de252e7bab8/go.mod h1:mJj2wa3oXVlk/WOHazW8eEZTyva98zDVjIur9lj8aiA=
|
github.com/yaoapp/gou v0.0.0-20210929100518-8de252e7bab8/go.mod h1:mJj2wa3oXVlk/WOHazW8eEZTyva98zDVjIur9lj8aiA=
|
||||||
github.com/yaoapp/gou v0.0.0-20210929112923-09baf3629b95 h1:KOMi0RR1ynNgLyaN7YIXVcS0Aj5YUhkad1IQ7Px8SL4=
|
github.com/yaoapp/gou v0.0.0-20210929112923-09baf3629b95 h1:KOMi0RR1ynNgLyaN7YIXVcS0Aj5YUhkad1IQ7Px8SL4=
|
||||||
github.com/yaoapp/gou v0.0.0-20210929112923-09baf3629b95/go.mod h1:EKDxzk74c04dULx5+lJfTpMkR+z4QswAl0NC7DXDiWU=
|
github.com/yaoapp/gou v0.0.0-20210929112923-09baf3629b95/go.mod h1:EKDxzk74c04dULx5+lJfTpMkR+z4QswAl0NC7DXDiWU=
|
||||||
|
github.com/yaoapp/gou v0.0.0-20210929115559-b1b0614e8d88 h1:rAjfDVt6CBjcQGE6ie4U7tqmvmU355lIf+Ww0cL1WjQ=
|
||||||
|
github.com/yaoapp/gou v0.0.0-20210929115559-b1b0614e8d88/go.mod h1:vcNZXFRgGuZWzjtYH65ck1o6nzWYDpToQ09zHC9xNDE=
|
||||||
github.com/yaoapp/kun v0.6.1 h1:gbjP5wmAuJLe1RGZ2evH4rPCVWykf0iqbksaHikF/GI=
|
github.com/yaoapp/kun v0.6.1 h1:gbjP5wmAuJLe1RGZ2evH4rPCVWykf0iqbksaHikF/GI=
|
||||||
github.com/yaoapp/kun v0.6.1/go.mod h1:igsTcWDnzpp0HtRN7sBP+XOEN2tzoC5hk2MyoPFs3xA=
|
github.com/yaoapp/kun v0.6.1/go.mod h1:igsTcWDnzpp0HtRN7sBP+XOEN2tzoC5hk2MyoPFs3xA=
|
||||||
github.com/yaoapp/kun v0.6.2 h1:QbtdZpVIklRDGEvL5YYRf/eR05YFZVFk/8rX2vy2K0Q=
|
github.com/yaoapp/kun v0.6.2 h1:QbtdZpVIklRDGEvL5YYRf/eR05YFZVFk/8rX2vy2K0Q=
|
||||||
|
|
@ -379,6 +381,8 @@ github.com/yaoapp/kun v0.6.3 h1:0wD0lo0Cl78O+CoKi+DRVp6AeQFSrFInF+ghu+mww8M=
|
||||||
github.com/yaoapp/kun v0.6.3/go.mod h1:igsTcWDnzpp0HtRN7sBP+XOEN2tzoC5hk2MyoPFs3xA=
|
github.com/yaoapp/kun v0.6.3/go.mod h1:igsTcWDnzpp0HtRN7sBP+XOEN2tzoC5hk2MyoPFs3xA=
|
||||||
github.com/yaoapp/kun v0.6.4 h1:5iEoZwaE0GZCLzB5uGmEr8X547CGvy0L61Ochmp47nY=
|
github.com/yaoapp/kun v0.6.4 h1:5iEoZwaE0GZCLzB5uGmEr8X547CGvy0L61Ochmp47nY=
|
||||||
github.com/yaoapp/kun v0.6.4/go.mod h1:igsTcWDnzpp0HtRN7sBP+XOEN2tzoC5hk2MyoPFs3xA=
|
github.com/yaoapp/kun v0.6.4/go.mod h1:igsTcWDnzpp0HtRN7sBP+XOEN2tzoC5hk2MyoPFs3xA=
|
||||||
|
github.com/yaoapp/kun v0.6.5 h1:RNEQp8EIiyGKyX64QfyoP8OreQBg0cCtF15xwUEUCNI=
|
||||||
|
github.com/yaoapp/kun v0.6.5/go.mod h1:igsTcWDnzpp0HtRN7sBP+XOEN2tzoC5hk2MyoPFs3xA=
|
||||||
github.com/yaoapp/xun v0.5.2 h1:DedZ26FpcXfkLnPKXzJsrbVmpWDRx9adUo8AvOcNT+g=
|
github.com/yaoapp/xun v0.5.2 h1:DedZ26FpcXfkLnPKXzJsrbVmpWDRx9adUo8AvOcNT+g=
|
||||||
github.com/yaoapp/xun v0.5.2/go.mod h1:y107NMHO635nhqJxMt582i1iqLjnNxAoeYr5/500UBw=
|
github.com/yaoapp/xun v0.5.2/go.mod h1:y107NMHO635nhqJxMt582i1iqLjnNxAoeYr5/500UBw=
|
||||||
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
github.com/yuin/goldmark v1.1.25/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||||
|
|
|
||||||
|
|
@ -6,6 +6,8 @@ import (
|
||||||
|
|
||||||
"github.com/mojocn/base64Captcha"
|
"github.com/mojocn/base64Captcha"
|
||||||
"github.com/yaoapp/kun/exception"
|
"github.com/yaoapp/kun/exception"
|
||||||
|
"github.com/yaoapp/xiang/config"
|
||||||
|
"github.com/yaoapp/xiang/xlog"
|
||||||
)
|
)
|
||||||
|
|
||||||
var captchaStore = base64Captcha.DefaultMemStore
|
var captchaStore = base64Captcha.DefaultMemStore
|
||||||
|
|
@ -76,6 +78,12 @@ func MakeCaptcha(option CaptchaOption) (string, string) {
|
||||||
if err != nil {
|
if err != nil {
|
||||||
exception.New("生成验证码出错 %s", 500, err).Throw()
|
exception.New("生成验证码出错 %s", 500, err).Throw()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// 打印日志
|
||||||
|
if config.Conf.Mode == "debug" {
|
||||||
|
xlog.Println("图形/音频验证码:", captchaStore.Get(id, false))
|
||||||
|
}
|
||||||
|
|
||||||
return id, content
|
return id, content
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
45
user/captcha_test.go
Normal file
45
user/captcha_test.go
Normal file
|
|
@ -0,0 +1,45 @@
|
||||||
|
package user
|
||||||
|
|
||||||
|
import (
|
||||||
|
"testing"
|
||||||
|
|
||||||
|
"github.com/stretchr/testify/assert"
|
||||||
|
)
|
||||||
|
|
||||||
|
func TestCaptcha(t *testing.T) {
|
||||||
|
id, content := MakeCaptcha(CaptchaOption{
|
||||||
|
Type: "audio",
|
||||||
|
Width: 240,
|
||||||
|
Height: 80,
|
||||||
|
Length: 4,
|
||||||
|
Lang: "zh",
|
||||||
|
})
|
||||||
|
assert.IsType(t, "string", id)
|
||||||
|
assert.IsType(t, "string", content)
|
||||||
|
captchaStore.Get(id, false)
|
||||||
|
assert.True(t, ValidateCaptcha(id, captchaStore.Get(id, false)))
|
||||||
|
|
||||||
|
id, content = MakeCaptcha(CaptchaOption{
|
||||||
|
Type: "math",
|
||||||
|
Width: 240,
|
||||||
|
Height: 80,
|
||||||
|
Length: 4,
|
||||||
|
Lang: "zh",
|
||||||
|
})
|
||||||
|
assert.IsType(t, "string", id)
|
||||||
|
assert.IsType(t, "string", content)
|
||||||
|
captchaStore.Get(id, false)
|
||||||
|
assert.True(t, ValidateCaptcha(id, captchaStore.Get(id, false)))
|
||||||
|
|
||||||
|
id, content = MakeCaptcha(CaptchaOption{
|
||||||
|
Type: "digit",
|
||||||
|
Width: 240,
|
||||||
|
Height: 80,
|
||||||
|
Length: 4,
|
||||||
|
Lang: "zh",
|
||||||
|
})
|
||||||
|
assert.IsType(t, "string", id)
|
||||||
|
assert.IsType(t, "string", content)
|
||||||
|
captchaStore.Get(id, false)
|
||||||
|
assert.True(t, ValidateCaptcha(id, captchaStore.Get(id, false)))
|
||||||
|
}
|
||||||
29
xlog/xlog.go
Normal file
29
xlog/xlog.go
Normal file
|
|
@ -0,0 +1,29 @@
|
||||||
|
package xlog
|
||||||
|
|
||||||
|
import (
|
||||||
|
"fmt"
|
||||||
|
"log"
|
||||||
|
)
|
||||||
|
|
||||||
|
// XLog 日志接口
|
||||||
|
type XLog interface{}
|
||||||
|
|
||||||
|
// These functions write to the standard logger.
|
||||||
|
|
||||||
|
// Print calls Output to print to the standard logger.
|
||||||
|
// Arguments are handled in the manner of fmt.Print.
|
||||||
|
func Print(v ...interface{}) {
|
||||||
|
log.Output(2, fmt.Sprint(v...))
|
||||||
|
}
|
||||||
|
|
||||||
|
// Printf calls Output to print to the standard logger.
|
||||||
|
// Arguments are handled in the manner of fmt.Printf.
|
||||||
|
func Printf(format string, v ...interface{}) {
|
||||||
|
log.Output(2, fmt.Sprintf(format, v...))
|
||||||
|
}
|
||||||
|
|
||||||
|
// Println calls Output to print to the standard logger.
|
||||||
|
// Arguments are handled in the manner of fmt.Println.
|
||||||
|
func Println(v ...interface{}) {
|
||||||
|
log.Output(2, fmt.Sprintln(v...))
|
||||||
|
}
|
||||||
Loading…
Add table
Reference in a new issue