@@ -10,16 +10,16 @@ import (
1010 "github.com/dgrijalva/jwt-go"
1111)
1212
13- // CustomClaims CustomClaims
14- type CustomClaims struct {
13+ // MediaClaims Media Claims
14+ type MediaClaims struct {
1515 Path string
1616 jwt.StandardClaims
1717}
1818
1919var (
20- jwtSecret = beego .AppConfig .DefaultString ("jwt_secret" , "bookstack.cn" )
21- usedSign sync.Map
22- MediaDuration int64 = beego .AppConfig .DefaultInt64 ("media_duration" , 3600 * 5 )
20+ mediaJwtSecret = beego .AppConfig .DefaultString ("jwt_secret" , "bookstack.cn" )
21+ usedSign sync.Map
22+ MediaDuration int64 = beego .AppConfig .DefaultInt64 ("media_duration" , 3600 * 5 )
2323)
2424
2525func init () {
@@ -52,15 +52,15 @@ func IsSignUsed(sign string) bool {
5252}
5353
5454// GenerateSign 生成token
55- func GenerateSign (path string , expire ... time.Duration ) (sign string , err error ) {
55+ func GenerateMediaSign (path string , expire ... time.Duration ) (sign string , err error ) {
5656 path = strings .TrimLeft (path , "/" )
5757 // 默认过期时间为一个月
5858 expireDuration := time .Now ().Add (30 * 24 * time .Hour )
5959 if len (expire ) > 0 {
6060 expireDuration = time .Now ().Add (expire [0 ])
6161 }
6262
63- customClaims := & CustomClaims {
63+ customClaims := & MediaClaims {
6464 path ,
6565 jwt.StandardClaims {
6666 ExpiresAt : expireDuration .Unix (),
@@ -71,24 +71,24 @@ func GenerateSign(path string, expire ...time.Duration) (sign string, err error)
7171 jwtToken := jwt .NewWithClaims (jwt .SigningMethodHS256 , customClaims )
7272
7373 // secret 用于对用户数据进行签名,不能暴露
74- return jwtToken .SignedString ([]byte (jwtSecret ))
74+ return jwtToken .SignedString ([]byte (mediaJwtSecret ))
7575}
7676
7777// ParseSign 解析jwt token
78- func ParseSign (sign string ) (path string , err error ) {
78+ func ParseMediaSign (sign string ) (path string , err error ) {
7979 var token = & jwt.Token {}
80- token , err = jwt .ParseWithClaims (sign , & CustomClaims {}, func (token * jwt.Token ) (interface {}, error ) {
80+ token , err = jwt .ParseWithClaims (sign , & MediaClaims {}, func (token * jwt.Token ) (interface {}, error ) {
8181 if _ , ok := token .Method .(* jwt.SigningMethodHMAC ); ! ok {
8282 return nil , fmt .Errorf ("Unexpected signing method: %v" , token .Header ["alg" ])
8383 }
84- return []byte (jwtSecret ), nil
84+ return []byte (mediaJwtSecret ), nil
8585 })
8686
8787 if err != nil {
8888 return
8989 }
9090
91- if claims , ok := token .Claims .(* CustomClaims ); ok && token .Valid {
91+ if claims , ok := token .Claims .(* MediaClaims ); ok && token .Valid {
9292 return strings .TrimLeft (claims .Path , "/" ), nil
9393 }
9494 return "" , err
0 commit comments