Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
A
admin-backend
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Odysseus
admin-backend
Commits
329808f9
Commit
329808f9
authored
Mar 20, 2024
by
brent
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
modify user login
parent
070955e2
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
57 additions
and
3 deletions
+57
-3
user.go
controllers/user.go
+56
-2
jwt.go
libs/utils/jwt.go
+1
-1
No files found.
controllers/user.go
View file @
329808f9
...
...
@@ -117,8 +117,9 @@ func (server *UserController) Login() {
server
.
respond
(
http
.
StatusOK
,
""
)
return
}
duration
:=
claims
.
Exp
-
claims
.
Iat
tokenString
,
err
:=
utils
.
GenerateToken
(
checkUser
,
checkUser
.
Id
,
int
(
duration
))
//duration := claims.Exp - claims.Iat
duration
:=
utils
.
DEFAULT_EXPIRE_SECONDS
tokenString
,
err
:=
utils
.
GenerateToken
(
checkUser
,
checkUser
.
Id
,
duration
)
if
err
!=
nil
{
server
.
respond
(
models
.
LoginFailed
,
"登录失败"
)
return
...
...
@@ -253,9 +254,62 @@ func regisgerUser(user models.User) (*models.User, error) {
mysql
.
GetMysqlInstace
()
.
Ormer
.
Update
(
checkUser
)
createApiKey
(
checkUser
)
createJWTToken
(
checkUser
)
return
checkUser
,
nil
}
func
createApiKey
(
checkUser
*
models
.
User
)
{
data
,
err
:=
kong
.
CreateApiKey
(
checkUser
)
if
err
!=
nil
{
return
}
if
data
.
Id
==
""
{
return
}
timestamp
:=
time
.
Now
()
app
:=
models
.
ApiKey
{
Name
:
"test"
,
ApiKey
:
data
.
Key
,
UserId
:
checkUser
.
Id
,
CreatedTime
:
timestamp
,
UpdatedTime
:
timestamp
,
Deleted
:
0
,
ApiKeyId
:
data
.
Id
,
}
mysql
.
GetMysqlInstace
()
.
Ormer
.
Insert
(
&
app
)
}
func
createJWTToken
(
checkUser
*
models
.
User
)
{
data
,
store
,
err
:=
kong
.
CreateJwt
(
checkUser
)
if
err
!=
nil
{
return
}
if
data
.
Id
==
""
{
return
}
jwtToken
,
err
:=
utils
.
GenerateKongToken
(
data
,
""
)
if
err
!=
nil
{
jwtToken
=
""
}
timestamp
:=
time
.
Now
()
app
:=
models
.
JwtToken
{
Name
:
"test"
,
JwtCredential
:
string
(
store
),
JwtToken
:
jwtToken
,
UserId
:
checkUser
.
Id
,
CreatedTime
:
timestamp
,
UpdatedTime
:
timestamp
,
Deleted
:
0
,
JwtId
:
data
.
Id
,
}
mysql
.
GetMysqlInstace
()
.
Ormer
.
Insert
(
&
app
)
}
func
generatorMD5
(
code
string
)
string
{
MD5
:=
md5
.
New
()
_
,
_
=
io
.
WriteString
(
MD5
,
code
)
...
...
libs/utils/jwt.go
View file @
329808f9
...
...
@@ -15,7 +15,7 @@ import (
const
(
SecretKEY
string
=
"JWT-Secret-Key"
DEFAULT_EXPIRE_SECONDS
int
=
600
0
// default expired 10 minutes
DEFAULT_EXPIRE_SECONDS
int
=
7
*
24
*
60
*
6
0
// default expired 10 minutes
PasswordHashBytes
=
16
)
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment