fix: do not send channel's secret to frontend
This commit is contained in:
@@ -83,7 +83,7 @@ func GetChannel(c *gin.Context) {
|
||||
})
|
||||
return
|
||||
}
|
||||
channel_, err := model.GetChannelById(id, userId)
|
||||
channel_, err := model.GetChannelById(id, userId, false)
|
||||
if err != nil {
|
||||
c.JSON(http.StatusOK, gin.H{
|
||||
"success": false,
|
||||
@@ -183,7 +183,7 @@ func UpdateChannel(c *gin.Context) {
|
||||
})
|
||||
return
|
||||
}
|
||||
oldChannel, err := model.GetChannelById(channel_.Id, userId)
|
||||
oldChannel, err := model.GetChannelById(channel_.Id, userId, true)
|
||||
if err != nil {
|
||||
c.JSON(http.StatusOK, gin.H{
|
||||
"success": false,
|
||||
|
||||
+7
-2
@@ -45,12 +45,17 @@ type BriefChannel struct {
|
||||
Description string `json:"description"`
|
||||
}
|
||||
|
||||
func GetChannelById(id int, userId int) (*Channel, error) {
|
||||
func GetChannelById(id int, userId int, selectAll bool) (*Channel, error) {
|
||||
if id == 0 || userId == 0 {
|
||||
return nil, errors.New("id 或 userId 为空!")
|
||||
}
|
||||
c := Channel{Id: id, UserId: userId}
|
||||
err := DB.Where(c).First(&c).Error
|
||||
var err error
|
||||
if selectAll {
|
||||
err = DB.Where(c).First(&c).Error
|
||||
} else {
|
||||
err = DB.Omit("secret").Where(c).First(&c).Error
|
||||
}
|
||||
return &c, err
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user