feat(mobile): only allow request from mobile client to copy session

This commit is contained in:
HFO4
2022-12-19 17:35:39 +08:00
parent e4c87483d6
commit bc0c374f00
3 changed files with 21 additions and 2 deletions

View File

@ -3,9 +3,11 @@ package middleware
import (
"fmt"
model "github.com/cloudreve/Cloudreve/v3/models"
"github.com/cloudreve/Cloudreve/v3/pkg/auth"
"github.com/cloudreve/Cloudreve/v3/pkg/hashid"
"github.com/cloudreve/Cloudreve/v3/pkg/serializer"
"github.com/gin-gonic/gin"
"net/http"
)
// HashID 将给定对象的HashID转换为真实ID
@ -60,3 +62,16 @@ func StaticResourceCache() gin.HandlerFunc {
}
}
// MobileRequestOnly
func MobileRequestOnly() gin.HandlerFunc {
return func(c *gin.Context) {
if c.GetHeader(auth.CrHeaderPrefix+"ios") == "" {
c.Redirect(http.StatusMovedPermanently, model.GetSiteURL().String())
c.Abort()
return
}
c.Next()
}
}