Commit add401fa authored by 武广's avatar 武广

fix: 处理获取token 问题

parent f324f4af
......@@ -14,7 +14,7 @@ import Authorized from '@/utils/Authorized';
import localStorage from '@/utils/localStorage';
import RightContent from '@/components/GlobalHeader/RightContent';
import MessageReminder from '@/components/MessageReminder';
import { getAuthorityFromRouter, getUrlSearchParams } from '@/utils/utils';
import { getAuthorityFromRouter, getUrlSearchParams, getToken } from '@/utils/utils';
import { getSocketUrl } from '@/services/messageReminder';
import logo from '../assets/logo.png';
import style from './BasicLayout.less';
......@@ -60,7 +60,7 @@ const BasicLayout = props => {
useEffect(() => {
try {
const token = window.localStorage.getItem('token');
const token = getToken();
const socket = new Socket({
url: getSocketUrl({ token, channelId: CHANNEL_ID }),
});
......
......@@ -3,6 +3,7 @@ import { connect } from 'dva';
import { Redirect } from 'umi';
import PageLoading from '@/components/PageLoading';
import localStorage from '@/utils/localStorage';
import { getUrlSearchParams, getToken } from '@/utils/utils';
class SecurityLayout extends React.Component {
state = {
......@@ -24,13 +25,19 @@ class SecurityLayout extends React.Component {
/* eslint-disable no-underscore-dangle */
render() {
// 判断是否从tob进入
const searchPrams = getUrlSearchParams();
const isTob = searchPrams.source === 'tob';
const { isReady } = this.state;
let isLogin = true;
// 你可以把它替换成你自己的登录认证规则(比如判断 token 是否存在)
const { children, loading } = this.props;
if (!localStorage.get('token')) {
if (!getToken()) {
isLogin = false;
}
console.log('getToken() :>> ', getToken());
console.log('isLogin :>> ', isLogin);
// 切换子应用布局
if (window.__POWERED_BY_QIANKUN__) {
......
......@@ -4,8 +4,8 @@ import { Card, Pagination, Table, notification, Drawer, Spin, Button, Modal } fr
import React, { Component } from 'react';
import { PageHeaderWrapper } from '@ant-design/pro-layout';
import { connect } from 'dva';
import { getToken } from '@/utils/utils';
import styles from './style.less';
import LocalStroage from '@/utils/localStorage';
import configApi from '../../../config/env.config';
import UpdateStock from './UpdateStock';
......@@ -163,9 +163,9 @@ class goodsManage extends Component {
audit = skuId => {
this.setState({
previewVisible: true,
src: `${configApi.prologueDomain}/goods/${skuId}?h=0&token=${LocalStroage.get(
'token',
)}&hideReport=1&time=${Date.now()}`,
src: `${
configApi.prologueDomain
}/goods/${skuId}?h=0&token=${getToken()}&hideReport=1&time=${Date.now()}`,
});
};
......
......@@ -6,7 +6,7 @@
/* eslint-disable no-underscore-dangle */
import { extend } from 'umi-request';
import { notification } from 'antd';
import { getUrlSearchParams } from './utils';
import { getUrlSearchParams, getToken } from './utils';
import localStorage from './localStorage';
import config from '../../config/env.config';
......@@ -81,11 +81,7 @@ const isTob = searchPrams.source === 'tob';
// request拦截器, 改变url 或 options.
request.interceptors.request.use(async (url, options) => {
let token = localStorage.get('token');
// tob进入使用tob token
if (isTob && localStorage.get('tobToken')) {
token = localStorage.get('tobToken');
}
const token = getToken();
if (!token && !url.includes('/v2/oauth/login')) {
window.location.href = `${window.origin}/user/login`;
}
......
......@@ -2,6 +2,7 @@
import { parse } from 'querystring';
import pathRegexp from 'path-to-regexp';
import moment from 'moment';
import localStorage from './localStorage';
/* eslint no-useless-escape:0 import/prefer-default-export:0 */
const reg = /(((^https?:(?:\/\/)?)(?:[-;:&=\+\$,\w]+@)?[A-Za-z0-9.-]+(?::\d+)?|(?:www.|[-;:&=\+\$,\w]+@)[A-Za-z0-9.-]+)((?:\/[\+~%\/.\w-_]*)?\??(?:[-\+=&;%@.\w_]*)#?(?:[\w]*))?)$/;
......@@ -192,3 +193,12 @@ export const getUrlSearchParams = () => {
}
return newObj;
};
// 获取token
export const getToken = () => {
// 从消费地图后管过来
if (getUrlParams('source') === 'tob' && localStorage.get('tobToken')) {
return localStorage.get('tobToken');
}
return localStorage.get('token');
};
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment