🐛 fix: playground gets token without verifying user's identity
This commit is contained in:
parent
490fb4c749
commit
317e0a6370
@ -56,10 +56,11 @@ func GetToken(c *gin.Context) {
|
|||||||
|
|
||||||
func GetPlaygroundToken(c *gin.Context) {
|
func GetPlaygroundToken(c *gin.Context) {
|
||||||
tokenName := "sys_playground"
|
tokenName := "sys_playground"
|
||||||
token, err := model.GetTokenByName(tokenName)
|
userId := c.GetInt("id")
|
||||||
|
token, err := model.GetTokenByName(tokenName, userId)
|
||||||
if err != nil {
|
if err != nil {
|
||||||
cleanToken := model.Token{
|
cleanToken := model.Token{
|
||||||
UserId: c.GetInt("id"),
|
UserId: userId,
|
||||||
Name: tokenName,
|
Name: tokenName,
|
||||||
Key: common.GenerateKey(),
|
Key: common.GenerateKey(),
|
||||||
CreatedTime: common.GetTimestamp(),
|
CreatedTime: common.GetTimestamp(),
|
||||||
|
@ -115,13 +115,13 @@ func GetTokenById(id int) (*Token, error) {
|
|||||||
return &token, err
|
return &token, err
|
||||||
}
|
}
|
||||||
|
|
||||||
func GetTokenByName(name string) (*Token, error) {
|
func GetTokenByName(name string, user_id int) (*Token, error) {
|
||||||
if name == "" {
|
if name == "" {
|
||||||
return nil, errors.New("name 为空!")
|
return nil, errors.New("name 为空!")
|
||||||
}
|
}
|
||||||
token := Token{Name: name}
|
token := Token{Name: name}
|
||||||
var err error = nil
|
var err error = nil
|
||||||
err = DB.First(&token, "name = ?", name).Error
|
err = DB.First(&token, "user_id = ? and name = ?", user_id, name).Error
|
||||||
return &token, err
|
return &token, err
|
||||||
}
|
}
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user