完成强制跳转登录页面、完成用户信息存储
此提交包含在:
3
src/helper/Context.js
一般檔案
3
src/helper/Context.js
一般檔案
@@ -0,0 +1,3 @@
|
||||
import { createContext } from "react";
|
||||
|
||||
export const UserContext = createContext({});
|
@@ -1,11 +1,13 @@
|
||||
import axios from 'axios';
|
||||
import { failed } from './alert';
|
||||
import qs from 'qs';
|
||||
import History from './history';
|
||||
|
||||
export function get(url) {
|
||||
return send(
|
||||
axios.get(url, {
|
||||
headers: {
|
||||
Authorization: 'Bearer ' + localStorage.getItem('jwt'),
|
||||
Authorization: localStorage.getItem('jwt'),
|
||||
"Allow-Control-Allow-Origin": "*"
|
||||
}
|
||||
}),
|
||||
@@ -14,9 +16,9 @@ export function get(url) {
|
||||
}
|
||||
export function post(url, data) {
|
||||
return send(
|
||||
axios.post(url, data, {
|
||||
axios.post(url, qs.stringify(data), {
|
||||
headers: {
|
||||
Authorization: 'Bearer ' + localStorage.getItem('jwt'),
|
||||
Authorization: localStorage.getItem('jwt'),
|
||||
"Allow-Control-Allow-Origin": "*"
|
||||
}
|
||||
}),
|
||||
@@ -33,6 +35,7 @@ async function send(xhr, retryFunc) {
|
||||
}
|
||||
try {
|
||||
const { data } = await xhr;
|
||||
console.log("recv: ", data);
|
||||
return {
|
||||
...data,
|
||||
networkStatus: 200
|
||||
@@ -43,16 +46,16 @@ async function send(xhr, retryFunc) {
|
||||
networkStatus: err?.response?.status ?? -1,
|
||||
status: false
|
||||
};
|
||||
if (err?.response?.status === 401) {
|
||||
History.force('/login');
|
||||
return failData;
|
||||
}
|
||||
waitToSend.push(retryFunc);
|
||||
if (err.message === 'Network Error')
|
||||
return await failed('您的设备似乎断网了,请检查网络后重试或刷新', flushWaitList) || failData;
|
||||
else if (err?.response?.status === 401)
|
||||
History.force('/login');
|
||||
else if (err?.response?.status === 504)
|
||||
if (err?.response?.status === 504)
|
||||
return await failed('请求超时,请耐心等待几秒后重试或刷新', flushWaitList) || failData;
|
||||
else
|
||||
return await failed('服务器出现问题,请稍后重试或刷新', flushWaitList) || failData;
|
||||
return failData;
|
||||
return await failed('服务器出现问题,请稍后重试或刷新', flushWaitList) || failData;
|
||||
}
|
||||
}
|
||||
|
||||
|
新增問題並參考
封鎖使用者