mirror of
https://github.com/GiriNeko/YesPlayMusic.git
synced 2025-12-16 13:17:46 +00:00
fix: 扫码登录问题
This commit is contained in:
parent
cc914d4799
commit
eb94aae801
3 changed files with 32 additions and 37 deletions
|
|
@ -2,27 +2,33 @@ import Cookies from 'js-cookie';
|
||||||
import { logout } from '@/api/auth';
|
import { logout } from '@/api/auth';
|
||||||
import store from '@/store';
|
import store from '@/store';
|
||||||
|
|
||||||
export function doLogout() {
|
export function setCookies(string) {
|
||||||
logout();
|
const cookies = string.split(';;');
|
||||||
// 网易云的接口会自动移除该 cookies
|
cookies.map(cookie => {
|
||||||
Cookies.remove('MUSIC_U');
|
document.cookie = cookie;
|
||||||
// 更新状态仓库中的用户信息
|
const cookieKeyValue = cookie.split(';')[0].split('=');
|
||||||
store.commit('updateData', { key: 'user', value: {} });
|
localStorage.setItem(`cookie-${cookieKeyValue[0]}`, cookieKeyValue[1]);
|
||||||
// 更新状态仓库中的登录状态
|
});
|
||||||
store.commit('updateData', { key: 'loginMode', value: null });
|
}
|
||||||
// 更新状态仓库中的喜欢列表
|
|
||||||
store.commit('updateData', { key: 'likedSongPlaylistID', value: undefined });
|
export function getCookie(key) {
|
||||||
|
return Cookies.get(key) ?? localStorage.getItem(`cookie-${key}`);
|
||||||
|
}
|
||||||
|
|
||||||
|
export function removeCookie(key) {
|
||||||
|
Cookies.remove(key);
|
||||||
|
localStorage.removeItem(`cookie-${key}`);
|
||||||
}
|
}
|
||||||
|
|
||||||
// MUSIC_U 只有在账户登录的情况下才有
|
// MUSIC_U 只有在账户登录的情况下才有
|
||||||
export function isLoggedIn() {
|
export function isLoggedIn() {
|
||||||
return Cookies.get('MUSIC_U') !== undefined ? true : false;
|
return getCookie('MUSIC_U') !== undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
// 账号登录
|
// 账号登录
|
||||||
export function isAccountLoggedIn() {
|
export function isAccountLoggedIn() {
|
||||||
return (
|
return (
|
||||||
Cookies.get('MUSIC_U') !== undefined &&
|
getCookie('MUSIC_U') !== undefined &&
|
||||||
store.state.data.loginMode === 'account'
|
store.state.data.loginMode === 'account'
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
@ -37,25 +43,14 @@ export function isLooseLoggedIn() {
|
||||||
return isAccountLoggedIn() || isUsernameLoggedIn();
|
return isAccountLoggedIn() || isUsernameLoggedIn();
|
||||||
}
|
}
|
||||||
|
|
||||||
export function getMusicU(string) {
|
export function doLogout() {
|
||||||
const temp = string.split(';');
|
logout();
|
||||||
if (!temp.length) {
|
removeCookie('MUSIC_U');
|
||||||
return undefined;
|
removeCookie('__csrf');
|
||||||
}
|
// 更新状态仓库中的用户信息
|
||||||
const MUSIC_U = temp.find(item => item.includes('MUSIC_U'));
|
store.commit('updateData', { key: 'user', value: {} });
|
||||||
if (MUSIC_U) {
|
// 更新状态仓库中的登录状态
|
||||||
return MUSIC_U.split('=')[1];
|
store.commit('updateData', { key: 'loginMode', value: null });
|
||||||
}
|
// 更新状态仓库中的喜欢列表
|
||||||
return '';
|
store.commit('updateData', { key: 'likedSongPlaylistID', value: undefined });
|
||||||
}
|
|
||||||
|
|
||||||
export function setMusicU(key, value) {
|
|
||||||
return Cookies.set(key, value);
|
|
||||||
}
|
|
||||||
|
|
||||||
export function setCookies(string) {
|
|
||||||
const cookies = string.split(';;');
|
|
||||||
cookies.map(cookie => {
|
|
||||||
document.cookie = cookie;
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,5 @@
|
||||||
import axios from 'axios';
|
import axios from 'axios';
|
||||||
import Cookies from 'js-cookie';
|
import { getCookie } from '@/utils/auth';
|
||||||
|
|
||||||
let baseURL = '';
|
let baseURL = '';
|
||||||
// Web 和 Electron 跑在不同端口避免同时启动时冲突
|
// Web 和 Electron 跑在不同端口避免同时启动时冲突
|
||||||
|
|
@ -22,10 +22,10 @@ const service = axios.create({
|
||||||
service.interceptors.request.use(function (config) {
|
service.interceptors.request.use(function (config) {
|
||||||
if (!config.params) config.params = {};
|
if (!config.params) config.params = {};
|
||||||
if (baseURL[0] !== '/' && !process.env.IS_ELECTRON) {
|
if (baseURL[0] !== '/' && !process.env.IS_ELECTRON) {
|
||||||
config.params.cookie = `MUSIC_U=${Cookies.get('MUSIC_U')};`;
|
config.params.cookie = `MUSIC_U=${getCookie('MUSIC_U')};`;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!process.env.IS_ELECTRON) {
|
if (!process.env.IS_ELECTRON && !config.url.includes('/login')) {
|
||||||
config.params.realIP = '211.161.244.70';
|
config.params.realIP = '211.161.244.70';
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -271,7 +271,7 @@ export default {
|
||||||
clearInterval(this.qrCodeCheckInterval);
|
clearInterval(this.qrCodeCheckInterval);
|
||||||
this.qrCodeInformation = '登录成功,请稍等...';
|
this.qrCodeInformation = '登录成功,请稍等...';
|
||||||
result.code = 200;
|
result.code = 200;
|
||||||
result.cookie = result.cookie.replace('HTTPOnly;', '');
|
result.cookie = result.cookie.replace('HTTPOnly', '');
|
||||||
this.handleLoginResponse(result);
|
this.handleLoginResponse(result);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue