File tree Expand file tree Collapse file tree 4 files changed +19
-3
lines changed Expand file tree Collapse file tree 4 files changed +19
-3
lines changed Original file line number Diff line number Diff line change 4
4
5
5
require (
6
6
github.com/gin-gonic/gin v1.9.1
7
+ github.com/google/uuid v1.3.0
7
8
gorm.io/driver/sqlite v1.5.2
8
9
gorm.io/gorm v1.25.2
9
10
)
Original file line number Diff line number Diff line change @@ -26,6 +26,8 @@ github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaS
26
26
github.com/google/go-cmp v0.5.5 h1:Khx7svrCpmxxtHBq5j2mp/xVjsi8hQMfNLvJFAlrGgU =
27
27
github.com/google/go-cmp v0.5.5 /go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE =
28
28
github.com/google/gofuzz v1.0.0 /go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg =
29
+ github.com/google/uuid v1.3.0 h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I =
30
+ github.com/google/uuid v1.3.0 /go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo =
29
31
github.com/jinzhu/inflection v1.0.0 h1:K317FqzuhWc8YvSVlFMCCUb36O/S9MCKRDI7QkRKD/E =
30
32
github.com/jinzhu/inflection v1.0.0 /go.mod h1:h+uFLlag+Qp1Va5pdKtLDYj+kHp5pxUVkryuEj+Srlc =
31
33
github.com/jinzhu/now v1.1.5 h1:/o9tlHleP7gOFmsnYNz3RGnqzefHA47wQpKrrdTIwXQ =
Original file line number Diff line number Diff line change 4
4
"strconv"
5
5
6
6
"github.com/gin-gonic/gin"
7
+ "github.com/google/uuid"
7
8
"gorm.io/driver/sqlite"
8
9
"gorm.io/gorm"
9
10
)
@@ -91,9 +92,16 @@ func main() {
91
92
}
92
93
93
94
var token Token
94
- if err := db .Where ("user_id = ?" , user .ID ).FirstOrCreate (& token ).Error ; err != nil {
95
- c .JSON (400 , gin.H {"code" : 1 , "message" : "无法生成token" })
96
- return
95
+ if err := db .Where ("user_id = ?" , user .ID ).First (& token ).Error ; err != nil {
96
+ // If token does not exist, create a new token for the user
97
+ token = Token {
98
+ UserID : user .ID ,
99
+ Token : generateToken (user .ID ), // Assume there is a function generateToken to generate a unique token
100
+ }
101
+ if err := db .Create (& token ).Error ; err != nil {
102
+ c .JSON (400 , gin.H {"code" : 1 , "message" : "无法生成token" })
103
+ return
104
+ }
97
105
}
98
106
99
107
c .JSON (200 , gin.H {"code" : 0 , "message" : "登录成功" , "token" : token .Token })
@@ -217,3 +225,8 @@ func main() {
217
225
218
226
r .Run ()
219
227
}
228
+
229
+ func generateToken (userID uint ) string {
230
+ token := uuid .New ().String () // Generate a unique token using UUID
231
+ return token
232
+ }
You can’t perform that action at this time.
0 commit comments