Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
F
finance-manage
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
finance-oa
finance-manage
Commits
c8d9b3f8
Commit
c8d9b3f8
authored
Jan 02, 2022
by
RuoYi
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
前端支持设置是否需要防止数据重复提交
parent
c9d19cbe
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
26 additions
and
0 deletions
+26
-0
ruoyi-ui/src/utils/request.js
ruoyi-ui/src/utils/request.js
+26
-0
No files found.
ruoyi-ui/src/utils/request.js
View file @
c8d9b3f8
...
@@ -4,6 +4,7 @@ import store from '@/store'
...
@@ -4,6 +4,7 @@ import store from '@/store'
import
{
getToken
}
from
'
@/utils/auth
'
import
{
getToken
}
from
'
@/utils/auth
'
import
errorCode
from
'
@/utils/errorCode
'
import
errorCode
from
'
@/utils/errorCode
'
import
{
tansParams
,
blobValidate
}
from
"
@/utils/ruoyi
"
;
import
{
tansParams
,
blobValidate
}
from
"
@/utils/ruoyi
"
;
import
cache
from
'
@/plugins/cache
'
import
{
saveAs
}
from
'
file-saver
'
import
{
saveAs
}
from
'
file-saver
'
let
downloadLoadingInstance
;
let
downloadLoadingInstance
;
...
@@ -23,6 +24,8 @@ const service = axios.create({
...
@@ -23,6 +24,8 @@ const service = axios.create({
service
.
interceptors
.
request
.
use
(
config
=>
{
service
.
interceptors
.
request
.
use
(
config
=>
{
// 是否需要设置 token
// 是否需要设置 token
const
isToken
=
(
config
.
headers
||
{}).
isToken
===
false
const
isToken
=
(
config
.
headers
||
{}).
isToken
===
false
// 是否需要防止数据重复提交
const
isRepeatSubmit
=
(
config
.
headers
||
{}).
repeatSubmit
===
false
if
(
getToken
()
&&
!
isToken
)
{
if
(
getToken
()
&&
!
isToken
)
{
config
.
headers
[
'
Authorization
'
]
=
'
Bearer
'
+
getToken
()
// 让每个请求携带自定义token 请根据实际情况自行修改
config
.
headers
[
'
Authorization
'
]
=
'
Bearer
'
+
getToken
()
// 让每个请求携带自定义token 请根据实际情况自行修改
}
}
...
@@ -33,6 +36,29 @@ service.interceptors.request.use(config => {
...
@@ -33,6 +36,29 @@ service.interceptors.request.use(config => {
config
.
params
=
{};
config
.
params
=
{};
config
.
url
=
url
;
config
.
url
=
url
;
}
}
if
(
!
isRepeatSubmit
&&
(
config
.
method
===
'
post
'
||
config
.
method
===
'
put
'
))
{
const
requestObj
=
{
url
:
config
.
url
,
data
:
typeof
config
.
data
===
'
object
'
?
JSON
.
stringify
(
config
.
data
)
:
config
.
data
,
time
:
new
Date
().
getTime
()
}
const
sessionObj
=
cache
.
session
.
getJSON
(
'
sessionObj
'
)
if
(
sessionObj
===
undefined
||
sessionObj
===
null
||
sessionObj
===
''
)
{
cache
.
session
.
setJSON
(
'
sessionObj
'
,
requestObj
)
}
else
{
const
s_url
=
sessionObj
.
url
;
// 请求地址
const
s_data
=
sessionObj
.
data
;
// 请求数据
const
s_time
=
sessionObj
.
time
;
// 请求时间
const
interval
=
1000
;
// 间隔时间(ms),小于此时间视为重复提交
if
(
s_data
===
requestObj
.
data
&&
requestObj
.
time
-
s_time
<
interval
&&
s_url
===
requestObj
.
url
)
{
const
message
=
'
数据正在处理,请勿重复提交
'
;
console
.
warn
(
`[
${
s_url
}
]: `
+
message
)
return
Promise
.
reject
(
new
Error
(
message
))
}
else
{
cache
.
session
.
setJSON
(
'
sessionObj
'
,
requestObj
)
}
}
}
return
config
return
config
},
error
=>
{
},
error
=>
{
console
.
log
(
error
)
console
.
log
(
error
)
...
...
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