Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
S
shuchengMiniPro
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
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
cfld-frontend
shuchengMiniPro
Commits
44c817d9
Commit
44c817d9
authored
Dec 19, 2023
by
王玉鑫
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat: 登录逻辑
parent
f0e510df
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
85 additions
and
44 deletions
+85
-44
App.vue
src/App.vue
+1
-0
index.js
src/api/url/index.js
+3
-1
request.js
src/utils/request.js
+81
-43
No files found.
src/App.vue
View file @
44c817d9
<
script
>
import
{
mapMutations
}
from
"vuex"
;
import
store
from
"./store"
;
import
{
login
}
from
'@/utils/request.js'
;
export
default
{
onLaunch
:
function
()
{
console
.
log
(
"App Launch"
);
...
...
src/api/url/index.js
View file @
44c817d9
...
...
@@ -27,5 +27,7 @@ export default {
// 联系我们列表
queryContacts
:
'/postcard/api/scSourceInfo/contact'
,
// 获取查询条件列表
queryFiltersList
:
'/postcard/api/sysDictData/listByCodes'
queryFiltersList
:
'/postcard/api/sysDictData/listByCodes'
,
/** 登录 */
login
:
'/postcard/user/login'
,
}
src/utils/request.js
View file @
44c817d9
import
baseUrl
from
'../core/config'
import
store
from
'@/store'
export
default
function
fetch
(
option
)
{
import
baseUrl
from
"../core/config"
;
import
API
from
"@/api/url/index.js"
;
import
store
from
"@/store"
;
function
_fetch
(
option
)
{
return
new
Promise
((
resolve
,
reject
)
=>
{
var
{
url
,
data
=
{},
header
,
methods
=
'post'
,
success
,
fail
}
=
option
var
{
url
,
data
=
{},
header
,
methods
=
"post"
,
success
,
fail
}
=
option
;
wx
.
request
({
url
:
baseUrl
+
url
,
...
...
@@ -17,46 +11,90 @@ export default function fetch (option) {
method
:
methods
,
header
:
{
"Content-Type"
:
"application/x-www-form-urlencoded"
,
...
header
Authorization
:
`Bearer
${
uni
.
getStorageSync
(
"token"
)
||
""
}
`
,
...
header
,
},
success
:
res
=>
{
success
:
(
res
)
=>
{
res
=
res
.
data
;
if
(
res
.
code
==
200
)
{
success
&&
success
(
res
.
data
);
resolve
(
res
.
data
);
}
else
if
(
res
.
code
==
300
)
{
if
(
fail
)
{
fail
(
res
.
msg
)
}
else
{
uni
.
showToast
({
title
:
res
.
msg
,
icon
:
'none'
})
}
if
(
res
.
msg
===
'当前会话失效,请重新登录'
)
{
store
.
commit
(
'logout'
)
}
}
else
if
(
res
.
code
==
500
)
{
if
(
fail
)
{
fail
(
res
.
msg
)
}
else
{
uni
.
showToast
({
title
:
'服务器繁忙,请稍候重试'
,
icon
:
'none'
})
}
else
{
if
(
res
.
code
==
300
)
{
if
(
fail
)
{
fail
(
res
.
msg
);
}
else
{
uni
.
showToast
({
title
:
res
.
msg
,
icon
:
"none"
,
});
}
if
(
res
.
msg
===
"当前会话失效,请重新登录"
)
{
store
.
commit
(
"logout"
);
}
}
else
if
(
res
.
code
==
500
)
{
if
(
fail
)
{
fail
(
res
.
msg
);
}
else
{
uni
.
showToast
({
title
:
"服务器繁忙,请稍候重试"
,
icon
:
"none"
,
});
}
}
reject
(
res
);
}
},
fail
:
err
=>
{
console
.
log
(
err
)
fail
&&
fail
(
err
)
fail
:
(
err
)
=>
{
console
.
log
(
err
)
;
fail
&&
fail
(
err
)
;
uni
.
showToast
({
title
:
'服务器繁忙,请稍候重试'
,
icon
:
'none'
})
title
:
"服务器繁忙,请稍候重试"
,
icon
:
"none"
,
})
;
reject
(
err
);
}
})
})
},
});
});
}
/**
* 获取小程序code
*/
function
getCode
()
{
return
new
Promise
((
resolve
,
reject
)
=>
{
uni
.
login
({
provider
:
"weixin"
,
success
(
res
)
{
resolve
(
res
);
},
fail
(
error
)
{
reject
(
error
);
},
});
});
}
export
async
function
login
(
force
=
false
)
{
const
token
=
uni
.
getStorageSync
(
"token"
);
if
(
!
token
||
force
)
{
const
{
code
}
=
await
getCode
();
const
result
=
await
_fetch
({
url
:
API
.
login
,
data
:
{
code
}
});
uni
.
setStorageSync
(
"token"
,
result
);
}
}
export
default
async
function
fetch
(...
args
)
{
await
login
();
try
{
const
result
=
await
_fetch
(...
args
);
return
result
;
}
catch
(
error
)
{
if
(
error
?.
code
===
401
)
{
await
login
(
true
);
return
_fetch
(...
args
);
}
else
{
return
Promise
.
reject
(
result
);
}
}
}
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