Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
qq_45598856
white-jotter
提交
3b241f8d
W
white-jotter
项目概览
qq_45598856
/
white-jotter
与 Fork 源项目一致
从无法访问的项目Fork
通知
2
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
W
white-jotter
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
3b241f8d
编写于
10月 18, 2019
作者:
E
Evan
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
chore: generate token
上级
e5d4afaa
变更
7
隐藏空白更改
内联
并排
Showing
7 changed file
with
66 addition
and
17 deletion
+66
-17
wj-vue/src/components/Login.vue
wj-vue/src/components/Login.vue
+2
-2
wj-vue/src/main.js
wj-vue/src/main.js
+5
-4
wj-vue/src/store/index.js
wj-vue/src/store/index.js
+6
-6
wj/pom.xml
wj/pom.xml
+5
-0
wj/src/main/java/com/gm/wj/controller/LoginController.java
wj/src/main/java/com/gm/wj/controller/LoginController.java
+9
-5
wj/src/main/java/com/gm/wj/pojo/User.java
wj/src/main/java/com/gm/wj/pojo/User.java
+9
-0
wj/src/main/java/com/gm/wj/util/TokenUtil.java
wj/src/main/java/com/gm/wj/util/TokenUtil.java
+30
-0
未找到文件。
wj-vue/src/components/Login.vue
浏览文件 @
3b241f8d
...
...
@@ -46,8 +46,8 @@
})
.
then
(
resp
=>
{
if
(
resp
.
data
.
code
===
200
)
{
var
data
=
resp
.
data
_this
.
$store
.
commit
(
'
login
'
,
data
.
data
)
var
data
=
resp
.
data
.
data
_this
.
$store
.
commit
(
'
login
'
,
data
)
var
path
=
_this
.
$route
.
query
.
redirect
_this
.
$router
.
replace
({
path
:
path
===
'
/
'
||
path
===
undefined
?
'
/home
'
:
path
})
}
...
...
wj-vue/src/main.js
浏览文件 @
3b241f8d
...
...
@@ -24,7 +24,8 @@ Vue.use(mavonEditor)
router
.
beforeEach
((
to
,
from
,
next
)
=>
{
if
(
to
.
meta
.
requireAuth
)
{
if
(
store
.
state
.
token
)
{
if
(
store
.
state
.
user
.
token
)
{
console
.
log
(
store
.
state
.
user
.
token
)
axios
.
post
(
'
/authentication
'
)
next
()
}
else
{
...
...
@@ -42,10 +43,10 @@ router.beforeEach((to, from, next) => {
// http request 拦截器
axios
.
interceptors
.
request
.
use
(
config
=>
{
if
(
store
.
state
.
token
)
{
console
.
log
(
store
.
state
.
token
)
if
(
store
.
state
.
user
.
token
)
{
// 判断是否存在token,如果存在的话,则每个http header都加上token
config
.
headers
.
Authorization
=
`token
${
JSON
.
stringify
(
store
.
state
.
token
)}
`
// config.headers.Token = `token ${JSON.stringify(store.state.user.token)}`
config
.
headers
.
Token
=
JSON
.
stringify
(
store
.
state
.
user
.
token
)
}
return
config
},
...
...
wj-vue/src/store/index.js
浏览文件 @
3b241f8d
...
...
@@ -8,10 +8,10 @@ export default new Vuex.Store({
user
:
{
name
:
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)
==
null
?
'
未登录
'
:
JSON
.
parse
(
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)).
name
,
// userface: window.localStorage.getItem('user' || '[]') == null ? '' : JSON.parse(window.localStorage.getItem('user' || '[]')).userface,
username
:
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)
==
null
?
''
:
JSON
.
parse
(
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)).
username
username
:
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)
==
null
?
''
:
JSON
.
parse
(
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)).
username
,
// roles: window.localStorage.getItem('user' || '[]') == null ? '' : JSON.parse(window.localStorage.getItem('user' || '[]')).roles
token
:
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)
==
null
?
''
:
JSON
.
parse
(
window
.
localStorage
.
getItem
(
'
user
'
||
'
[]
'
)).
token
},
token
:
window
.
localStorage
.
getItem
(
'
token
'
),
routes
:
[]
},
mutations
:
{
...
...
@@ -19,12 +19,12 @@ export default new Vuex.Store({
state
.
routes
=
menus
},
login
(
state
,
data
)
{
// state.token
= data
window
.
localStorage
.
setItem
(
'
token
'
,
data
)
state
.
user
=
data
window
.
localStorage
.
setItem
(
'
user
'
,
JSON
.
stringify
(
data
)
)
},
logout
(
state
)
{
window
.
localStorage
.
removeItem
(
'
token
'
)
//
state.user = null
window
.
localStorage
.
removeItem
(
'
user
'
)
state
.
user
=
null
state
.
routes
=
[]
}
},
...
...
wj/pom.xml
浏览文件 @
3b241f8d
...
...
@@ -117,6 +117,11 @@
<artifactId>
fastjson
</artifactId>
<version>
1.2.41
</version>
</dependency>
<dependency>
<groupId>
com.auth0
</groupId>
<artifactId>
java-jwt
</artifactId>
<version>
3.8.3
</version>
</dependency>
</dependencies>
<properties>
<java.version>
1.8
</java.version>
...
...
wj/src/main/java/com/gm/wj/controller/LoginController.java
浏览文件 @
3b241f8d
...
...
@@ -8,6 +8,7 @@ import com.gm.wj.pojo.User;
import
com.gm.wj.result.Result
;
import
com.gm.wj.result.ResultFactory
;
import
com.gm.wj.service.UserService
;
import
com.gm.wj.util.TokenUtil
;
import
org.apache.shiro.SecurityUtils
;
import
org.apache.shiro.authc.AuthenticationException
;
import
org.apache.shiro.authc.UsernamePasswordToken
;
...
...
@@ -34,12 +35,15 @@ public class LoginController {
Subject
subject
=
SecurityUtils
.
getSubject
();
// subject.getSession().setTimeout(10000);
UsernamePasswordToken
t
oken
=
new
UsernamePasswordToken
(
username
,
requestUser
.
getPassword
());
UsernamePasswordToken
usernamePasswordT
oken
=
new
UsernamePasswordToken
(
username
,
requestUser
.
getPassword
());
try
{
subject
.
login
(
t
oken
);
subject
.
login
(
usernamePasswordT
oken
);
User
user
=
userService
.
getByUserName
(
username
);
session
.
setAttribute
(
"user"
,
user
);
return
ResultFactory
.
buildSuccessResult
(
token
);
TokenUtil
tokenUtil
=
new
TokenUtil
();
String
token
=
tokenUtil
.
getToken
(
user
);
user
.
setToken
(
token
);
session
.
setAttribute
(
"token"
,
token
);
return
ResultFactory
.
buildSuccessResult
(
user
);
}
catch
(
AuthenticationException
e
)
{
String
message
=
"账号密码错误"
;
return
ResultFactory
.
buildFailResult
(
message
);
...
...
@@ -87,7 +91,7 @@ public class LoginController {
@ResponseBody
@PostMapping
(
value
=
"api/authentication"
)
public
String
authentication
(
@RequestHeader
(
"
Authorizatio
n"
)
String
token
){
public
String
authentication
(
@RequestHeader
(
"
Toke
n"
)
String
token
){
// System.out.println(user.getUsername());
return
"authentication success"
;
}
...
...
wj/src/main/java/com/gm/wj/pojo/User.java
浏览文件 @
3b241f8d
...
...
@@ -17,6 +17,7 @@ public class User {
String
password
;
String
name
;
String
salt
;
String
token
;
public
int
getId
()
{
return
id
;
...
...
@@ -57,5 +58,13 @@ public class User {
public
void
setSalt
(
String
salt
)
{
this
.
salt
=
salt
;
}
public
String
getToken
()
{
return
token
;
}
public
void
setToken
(
String
token
)
{
this
.
token
=
token
;
}
}
wj/src/main/java/com/gm/wj/util/TokenUtil.java
0 → 100644
浏览文件 @
3b241f8d
package
com.gm.wj.util
;
import
com.auth0.jwt.JWT
;
import
com.auth0.jwt.algorithms.Algorithm
;
import
com.gm.wj.pojo.User
;
import
java.lang.annotation.ElementType
;
import
java.lang.annotation.Retention
;
import
java.lang.annotation.RetentionPolicy
;
import
java.lang.annotation.Target
;
public
class
TokenUtil
{
public
String
getToken
(
User
user
)
{
String
token
=
JWT
.
create
().
withAudience
(
Integer
.
toString
(
user
.
getId
()))
.
sign
(
Algorithm
.
HMAC256
(
user
.
getPassword
()));
return
token
;
}
@Target
({
ElementType
.
METHOD
,
ElementType
.
TYPE
})
@Retention
(
RetentionPolicy
.
RUNTIME
)
public
@interface
PassToken
{
boolean
required
()
default
true
;
}
@Target
({
ElementType
.
METHOD
,
ElementType
.
TYPE
})
@Retention
(
RetentionPolicy
.
RUNTIME
)
public
@interface
UserLoginToken
{
boolean
required
()
default
true
;
}
}
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录