Skip to content

Commit bb90dd0

Browse files
committed
视频播放链接优化
1 parent 749e245 commit bb90dd0

File tree

3 files changed

+6
-4
lines changed

3 files changed

+6
-4
lines changed

controllers/DocumentController.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -300,7 +300,7 @@ func (this *DocumentController) Read() {
300300
poster, _ := sel.Attr("poster")
301301
src, _ := sel.Attr("src")
302302
if !(strings.HasPrefix(src, "https://") || strings.HasPrefix(src, "http://")) {
303-
sign, _ := utils.GenerateMediaSign(src, time.Duration(utils.MediaDuration)*time.Second)
303+
sign, _ := utils.GenerateMediaSign(src, time.Now().UnixNano(), time.Duration(utils.MediaDuration)*time.Second)
304304
if strings.Contains(src, "?") {
305305
src = src + "&sign=" + sign
306306
} else {

controllers/api/CommonController.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -949,7 +949,7 @@ func (this *CommonController) handleReleaseV3(release, bookIdentify string) inte
949949
}
950950
}
951951
} else {
952-
if sign, err := utils.GenerateMediaSign(src, time.Duration(utils.MediaDuration)); err == nil {
952+
if sign, err := utils.GenerateMediaSign(src, time.Now().UnixNano(), time.Duration(utils.MediaDuration)); err == nil {
953953
if strings.Contains(src, "?") {
954954
src = src + "&sign=" + sign
955955
} else {

utils/jwt.go

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,7 +12,8 @@ import (
1212

1313
// MediaClaims Media Claims
1414
type MediaClaims struct {
15-
Path string
15+
Path string
16+
UnixNano int64
1617
jwt.StandardClaims
1718
}
1819

@@ -52,7 +53,7 @@ func IsSignUsed(sign string) bool {
5253
}
5354

5455
// GenerateSign 生成token
55-
func GenerateMediaSign(path string, expire ...time.Duration) (sign string, err error) {
56+
func GenerateMediaSign(path string, unixNano int64, expire ...time.Duration) (sign string, err error) {
5657
path = strings.TrimLeft(path, "/")
5758
// 默认过期时间为一个月
5859
expireDuration := time.Now().Add(30 * 24 * time.Hour)
@@ -62,6 +63,7 @@ func GenerateMediaSign(path string, expire ...time.Duration) (sign string, err e
6263

6364
customClaims := &MediaClaims{
6465
path,
66+
unixNano,
6567
jwt.StandardClaims{
6668
ExpiresAt: expireDuration.Unix(),
6769
},

0 commit comments

Comments
 (0)