Commit ebbb2c40 authored by Xuguangxing's avatar Xuguangxing

feat: 重点- 更新login

parent 34fe5d2f
...@@ -2,6 +2,7 @@ import Bridge from '@qg/js-bridge'; ...@@ -2,6 +2,7 @@ import Bridge from '@qg/js-bridge';
import MpBridge from '@/service/mp'; import MpBridge from '@/service/mp';
import { isWxMp, isApp } from '@/service/validation.service'; import { isWxMp, isApp } from '@/service/validation.service';
import localStorage from '@/service/localStorage.service'; import localStorage from '@/service/localStorage.service';
import cookies from '@/service/cookieStorage.service';
export default { export default {
data() { data() {
return { return {
...@@ -17,6 +18,8 @@ export default { ...@@ -17,6 +18,8 @@ export default {
const appData = json.data || {}; const appData = json.data || {};
if (appData && appData.token) { if (appData && appData.token) {
localStorage.set('vccToken', appData.token); localStorage.set('vccToken', appData.token);
cookies.set('vccToken', appData.token);
// window.sessionStorage.setItem('vccToken', appData.token);
_this.$nextTick(() => { _this.$nextTick(() => {
window.location.reload(); window.location.reload();
}); });
......
import cookies from 'js-cookie'; import cookies from 'js-cookie';
const option = { const option = {
domain: window.location.host.indexOf('.q-gp.com') >= 0 ? '.q-gp.com' : '', domain: window.location.host.indexOf('.q-gp.com') >= 0 ? '.q-gp.com' : ''
expires: 365
}; };
const Cookies = { const Cookies = {
get(key) { get(key) {
......
...@@ -2,10 +2,63 @@ import HttpRequest from '@qg/ui-request'; ...@@ -2,10 +2,63 @@ import HttpRequest from '@qg/ui-request';
import { Toast } from '@qg/cherry-ui'; import { Toast } from '@qg/cherry-ui';
import store from '@/store'; import store from '@/store';
import { appVersion } from '@/service/validation.service'; import { appVersion } from '@/service/validation.service';
import { getVccChannel } from './userInfo.service';
import localStorage from '@/service/localStorage.service';
function getURLSearchParams(json) {
if (!json) return '';
const dataArray = Object.keys(json).map(key => {
if (json[key] === undefined) return '';
return encodeURIComponent(key) + '=' + encodeURIComponent(json[key]);
});
return dataArray.filter(item => item !== undefined && item !== null).join('&');
}
const http = new HttpRequest( const http = new HttpRequest(
{},
{ {
groupBuy: {
response(res) {
const { data, config } = res;
const returnRawData = config.rawData;
if (returnRawData) return [data, null];
if (data.businessCode === '401' || data.businessCode === '0401') {
// router.push({ name: 'login' });
window.localStorage.removeItem('vccToken');
window.sessionStorage.removeItem('vccToken');
}
const success =
(data.code === '0000' && data.businessCode === '0000') || data.business_code === 0;
if (success) {
return [data.data, null];
}
const msg = data.msg || '服务异常';
if (!config.hideToast || !data.noAlert) {
Toast(msg);
}
let error = new Error(msg);
error.response = data;
console.error(error);
return [null, error];
},
request(cfg) {
const { method, hideVccChannel } = cfg;
cfg.headers['X-Auth-Token'] = localStorage.get('vccToken') || '';
if (cfg.customHeader) {
Object.assign(cfg.headers, cfg.customHeader);
}
if (!hideVccChannel) {
cfg.headers['vccChannel'] = getVccChannel();
cfg.headers['sonVccChannel'] = getVccChannel('sonVccChannel');
}
if (method === 'post' && cfg.emulateJSON) {
cfg.headers['Content-Type'] = 'application/x-www-form-urlencoded';
cfg.data = getURLSearchParams(cfg.data);
}
return cfg;
}
}
},
{
strategy: 'groupBuy',
headers: { headers: {
'x-user-terminal': 'H5', 'x-user-terminal': 'H5',
version: appVersion || '7900' version: appVersion || '7900'
......
...@@ -10,9 +10,8 @@ export default { ...@@ -10,9 +10,8 @@ export default {
// token校验,整个流程都是登陆后的 // token校验,整个流程都是登陆后的
init: router => { init: router => {
router.beforeEach((to, from, next) => { router.beforeEach((to, from, next) => {
if (to.name == 'groupBuyList' && from.name == 'groupBuySkuInfo') { if (!to.query.vccToken) {
// 这是为了详情页登录,把登录信息带回列表页所做的处理 to.query.vccToken = Cookies.get('vccToken') || '';
to.query.vccToken = '{token}';
} }
Cookies.set('h', 0); Cookies.set('h', 0);
// 所有自定义路由字段在此处理 // 所有自定义路由字段在此处理
...@@ -31,6 +30,7 @@ export default { ...@@ -31,6 +30,7 @@ export default {
} }
if (value && value !== '{token}' && value !== '{vccToken}') { if (value && value !== '{token}' && value !== '{vccToken}') {
localStorage.set(item, value); localStorage.set(item, value);
Cookies.set(item, value);
} }
}); });
......
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