1
0
Fork 0
mirror of https://github.com/VueTorrent/VueTorrent.git synced 2025-04-28 11:33:39 +03:00

fix: redirect to login when auth expires

This commit is contained in:
Daan Wijns 2023-03-05 09:11:58 +01:00
parent 607eb3b3d5
commit 0cc22ae1ea
3 changed files with 27 additions and 25 deletions

View file

@ -4,20 +4,13 @@
<p>The sleekest looking WebUI for qBittorrent made with Vue.js!</p> <p>The sleekest looking WebUI for qBittorrent made with Vue.js!</p>
</div> </div>
![Vue](https://img.shields.io/badge/Vue-%5E2.7.14-brightgreen) ![Vue](https://img.shields.io/badge/Vue-%5E2.7.14-brightgreen) ![qBittorrent](https://img.shields.io/badge/qBittorrent-4.4%2B-brightgreen)
![qBittorrent](https://img.shields.io/badge/qBittorrent-4.4%2B-brightgreen)
![Vuetify](https://img.shields.io/badge/Vuetify-%5E2.6.10-brightgreen) ![Vuetify](https://img.shields.io/badge/Vuetify-%5E2.6.10-brightgreen)
![stars](https://img.shields.io/github/stars/WDaan/VueTorrent) ![stars](https://img.shields.io/github/stars/WDaan/VueTorrent) ![Forks](https://img.shields.io/github/forks/WDaan/VueTorrent)
![Forks](https://img.shields.io/github/forks/WDaan/VueTorrent) ![Issues](https://img.shields.io/github/issues/WDaan/VueTorrent) ![Closed](https://img.shields.io/github/issues-closed/WDaan/VueTorrent)
![Issues](https://img.shields.io/github/issues/WDaan/VueTorrent) ![Closed PR](https://img.shields.io/github/issues-pr-closed/WDaan/VueTorrent) ![Version](https://img.shields.io/github/v/release/wdaan/vuetorrent)
![Closed](https://img.shields.io/github/issues-closed/WDaan/VueTorrent) ![Test Status](https://img.shields.io/github/actions/workflow/status/wdaan/vuetorrent/test.yml) ![Downloads](https://img.shields.io/github/downloads/WDaan/VueTorrent/total)
![Closed PR](https://img.shields.io/github/issues-pr-closed/WDaan/VueTorrent)
![Version](https://img.shields.io/github/v/release/wdaan/vuetorrent)
![Test Status](https://img.shields.io/github/actions/workflow/status/wdaan/vuetorrent/test.yml)
![Downloads](https://img.shields.io/github/downloads/WDaan/VueTorrent/total)
## Screenshots ## Screenshots

View file

@ -1,4 +1,4 @@
import axios from 'axios' import axios, { AxiosError } from 'axios'
import type { AxiosInstance } from 'axios' import type { AxiosInstance } from 'axios'
import type { import type {
ApplicationVersion, ApplicationVersion,

View file

@ -5,6 +5,7 @@ import type { ModalTemplate, StoreState } from '@/types/vuetorrent'
import Torrent from '@/models/Torrent' import Torrent from '@/models/Torrent'
import type { AppPreferences } from '@/types/qbit/models' import type { AppPreferences } from '@/types/qbit/models'
import { Status } from '@/models' import { Status } from '@/models'
import router from '@/router'
export default { export default {
SET_APP_VERSION(state: StoreState, version: string) { SET_APP_VERSION(state: StoreState, version: string) {
@ -52,6 +53,7 @@ export default {
state.authenticated = payload state.authenticated = payload
}, },
updateMainData: async (state: StoreState) => { updateMainData: async (state: StoreState) => {
try {
const response = await qbit.getMainData(state.rid || undefined) const response = await qbit.getMainData(state.rid || undefined)
state.rid = response.rid || undefined state.rid = response.rid || undefined
@ -66,6 +68,13 @@ export default {
Trackers.update(data) Trackers.update(data)
Torrents.update(data) Torrents.update(data)
DocumentTitle.update() DocumentTitle.update()
} catch (error: any) {
if(error?.response?.status === 403){
console.error("No longer authtenticated, logging out...")
state.authenticated = false
router.push({ name: 'login' })
}
}
}, },
FETCH_SETTINGS: async (state: StoreState, settings: AppPreferences) => { FETCH_SETTINGS: async (state: StoreState, settings: AppPreferences) => {
state.settings = settings state.settings = settings