From 01652a527d00626af61cfb45f3acf7966813cf5f Mon Sep 17 00:00:00 2001 From: simple321vip Date: Tue, 25 Oct 2022 08:51:12 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A2=9E=E5=8A=A0=20=E6=B3=A8=E5=86=8C=20?= =?UTF-8?q?=E9=A1=B5=E9=9D=A2=EF=BC=8Csorry=E9=A1=B5=E9=9D=A2=EF=BC=8C?= =?UTF-8?q?=E4=BF=AE=E6=94=B9=E9=83=A8=E5=88=86bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/api/blog.ts | 11 +- src/api/user.ts | 10 +- src/components/login/login.vue | 2 +- src/components/login/register.vue | 77 ++++++++++ src/components/login/sorry.vue | 14 ++ src/main.ts | 67 +++++---- src/router/index.ts | 8 ++ src/view/blog/createBlog.vue | 226 ++++++++++++++++++++++++------ 8 files changed, 341 insertions(+), 74 deletions(-) create mode 100644 src/components/login/register.vue create mode 100644 src/components/login/sorry.vue diff --git a/src/api/blog.ts b/src/api/blog.ts index f6f8249..3250e57 100644 --- a/src/api/blog.ts +++ b/src/api/blog.ts @@ -39,6 +39,15 @@ const removeBlogType = (data: Object) => { }) } +const sortBlogTypes = (data: Object) => { + return service({ + url: '/auth/api/v1/author/blog_types', + method: 'POST', + headers: headers, + data: data + }) +} + const getContent = (id: string) => { return service({ url: '/auth/api/v1/author/blog/content/' + id, @@ -74,4 +83,4 @@ const deleteContent = (bid: string) => { } -export { listAll, updateBtName, putBlogType, removeBlogType, getContent, putBlog, updateContent, deleteContent } \ No newline at end of file +export { listAll, updateBtName, putBlogType, removeBlogType, sortBlogTypes, getContent, putBlog, updateContent, deleteContent } \ No newline at end of file diff --git a/src/api/user.ts b/src/api/user.ts index 9356738..0a27cb0 100644 --- a/src/api/user.ts +++ b/src/api/user.ts @@ -22,5 +22,13 @@ const logout = (id: string) => { }) } +const register_user = (postData: Object) => { + return service({ + url: '/auth/api/v1/register', + method: 'POST', + data: postData + }) +} -export { authorize, obtainUserInfo, logout } \ No newline at end of file + +export { authorize, obtainUserInfo, logout, register_user } \ No newline at end of file diff --git a/src/components/login/login.vue b/src/components/login/login.vue index f32124b..f7f13f9 100644 --- a/src/components/login/login.vue +++ b/src/components/login/login.vue @@ -13,7 +13,7 @@ --> -

百度网盘扫码登陆请使用微信扫一扫登录

+

百度网盘扫码登陆请使用微信扫一扫登录

diff --git a/src/components/login/register.vue b/src/components/login/register.vue new file mode 100644 index 0000000..68ec294 --- /dev/null +++ b/src/components/login/register.vue @@ -0,0 +1,77 @@ + + + + diff --git a/src/components/login/sorry.vue b/src/components/login/sorry.vue new file mode 100644 index 0000000..df03677 --- /dev/null +++ b/src/components/login/sorry.vue @@ -0,0 +1,14 @@ + + + + diff --git a/src/main.ts b/src/main.ts index aa1f634..178cfcb 100644 --- a/src/main.ts +++ b/src/main.ts @@ -23,35 +23,52 @@ app.use(store) import { getToken, getTenant, setToken, setTenant } from './utils/auth' import { Tenant } from './entity/index' import Cookies from 'js-cookie' -import { obtainUserInfo } from './api/user' -const whiteList = ['/login'] +const whiteList = ['/login', '/register', '/sorryPage'] let url = window.location.href async function checktoken(url: string) { - if (url.search("token") != -1) { - const list = url.split("?token=") - - let base_url = list[0] - let authorizeToken = list[1] - if (list.length < 2 || authorizeToken.length == 0) { - router.push({ - path: '/illustration', - }) - return - } - await obtainUserInfo(authorizeToken).then(response => { - - if (response.status == 200) { - const tenant = { - id: response.data.id, - account: response.data.account - } - setToken(authorizeToken) - setTenant(tenant) - window.open(base_url, "_self") - } + if (url.search("register") != -1) { + let arr = url.split('?') + let parameters = arr[1].split('&') + let query_data: { [key: string]: any } = {} + parameters.forEach(parameter => { + let parameter_list = parameter.split("=") + query_data[parameter_list[0]] = parameter_list[1] }) + router.push({ + path: '/register', + query: query_data + }) + return + } + if (url.search("home") != -1) { + let arr = url.split('?') + let parameters = arr[1].split('&') + let query_data: { [key: string]: any } = {} + parameters.forEach(parameter => { + let parameter_list = parameter.split("=") + query_data[parameter_list[0]] = parameter_list[1] + }) + const tenant = { + id: query_data.tenantId, + account: query_data.account + } + + setToken(query_data.token as string) + setTenant(tenant) + + const { href } = router.resolve({ + path: '/' + }); + window.open(href, '_self'); + return + } + if (url.search("sorryPage") != -1) { + router.push({ + path: '/sorryPage', + }) + return } } checktoken(url) @@ -96,7 +113,7 @@ router.beforeEach((to, from, next) => { next() } } else { - if (whiteList.includes(to.path)) { + if (whiteList.indexOf(to.path) !== -1) { next() } else { next('/login') diff --git a/src/router/index.ts b/src/router/index.ts index dd5082c..b1db757 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -104,6 +104,14 @@ const routes: Array = [ path: "/illustration", component: () => import('../components/illustration/index.vue') }, + { + path: "/register", + component: () => import('../components/login/register.vue') + }, + { + path: "/sorryPage", + component: () => import('../components/login/sorry.vue') + }, ] diff --git a/src/view/blog/createBlog.vue b/src/view/blog/createBlog.vue index e6f08c8..b6ee5bb 100644 --- a/src/view/blog/createBlog.vue +++ b/src/view/blog/createBlog.vue @@ -1,10 +1,35 @@