| 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182 |
- import axios, { AxiosError, AxiosResponse } from 'axios'
- import store from '@/store/index'
- export default function axiosConfig() {
- axios.defaults.withCredentials = true
- axios.interceptors.response.use(
- function(response: AxiosResponse) {
- if (process.env.NODE_ENV === 'development') {
- console.log('[AXIOS] response value: ', response)
- }
- const responseData = response.data
- if (responseData.code === '00000') {
- return Promise.resolve(response)
- } else {
- console.log('reject')
- if (responseData.code === 'A0223' || responseData.code === 'A0230') {
- jumpToLogin()
- }
- return Promise.reject(response)
- }
- },
- function(error: AxiosError) {
- if (process.env.NODE_ENV === 'development') {
- console.error('[AXIOS] response error: ', error.response)
- }
- if (error.response) {
- if (error.response.status === 401) {
- jumpToLogin()
- }
- return Promise.reject(error.response)
- }
- return Promise.reject(error)
- }
- )
- axios.interceptors.request.use(
- function(config) {
- if (process.env.NODE_ENV === 'development') {
- console.log('[AXIOS] request config: ', config)
- }
- if (store.state.token) {
- config.headers = {
- Authorization: store.state.token,
- ...(config.headers ?? {})
- }
- }
- return config
- },
- // Do something with request error
- function(error) {
- if (process.env.NODE_ENV === 'development') {
- console.error('[AXIOS] request error: ', error)
- }
- return Promise.reject(error)
- }
- )
- }
- axiosConfig()
- // const portal = process.env.portalUrl
- const portal = 'http://p.seec.seecoder.cn'
- export const getLoginUrl = () => {
- console.log(portal)
- const location = window.location
- return `${portal}/api/interaction?client_id=seec-mooc&redirect_uri=${encodeURIComponent(
- location.origin + '/'
- )}&scope=openid`
- }
- /**
- * 跳转到登陆界面
- */
- export const jumpToLogin = () => {
- window.location.href = getLoginUrl()
- }
|