Rewrote backend in Rust
This commit is contained in:
@@ -5,6 +5,7 @@ import {
|
||||
post_token_form,
|
||||
isErrorResponse
|
||||
} from './base';
|
||||
import axios from 'axios';
|
||||
|
||||
export const get_root = (
|
||||
token: string
|
||||
@@ -31,7 +32,7 @@ export const create_folder = (
|
||||
Responses.CreateFolder | Responses.CreateFolderExists | Responses.Error
|
||||
> =>
|
||||
post_token<Requests.CreateFolder>(
|
||||
'/api/fs/createFolder',
|
||||
'/api/fs/create_folder',
|
||||
{
|
||||
parent: parent,
|
||||
name: name
|
||||
@@ -47,7 +48,7 @@ export const create_file = (
|
||||
Responses.CreateFolder | Responses.CreateFolderExists | Responses.Error
|
||||
> =>
|
||||
post_token<Requests.CreateFolder>(
|
||||
'/api/fs/createFile',
|
||||
'/api/fs/create_file',
|
||||
{
|
||||
parent: parent,
|
||||
name: name
|
||||
@@ -89,14 +90,22 @@ export async function upload_file(
|
||||
if ('exists' in node && !node.isFile)
|
||||
return { statusCode: 400, message: 'File exists as folder' };
|
||||
|
||||
const form = new FormData();
|
||||
form.set('file', file.file);
|
||||
return post_token_form(
|
||||
`/api/fs/upload/${node.id}`,
|
||||
form,
|
||||
token,
|
||||
onProgress
|
||||
);
|
||||
return axios
|
||||
.post(`/api/fs/upload/${node.id}`, file.file, {
|
||||
headers: {
|
||||
Authorization: 'Bearer ' + token,
|
||||
'Content-type': 'multipart/form-data'
|
||||
},
|
||||
onUploadProgress: onProgress
|
||||
})
|
||||
.then((res) => {
|
||||
console.log(res);
|
||||
return res.data;
|
||||
})
|
||||
.catch((err) => {
|
||||
console.log(err);
|
||||
return err.response.data;
|
||||
});
|
||||
}
|
||||
|
||||
export function download_file(token: string, id: number) {
|
||||
|
||||
@@ -18,12 +18,19 @@ export async function check_token(
|
||||
token: TokenInjectType
|
||||
): Promise<string | void> {
|
||||
if (!token.jwt.value) return token.logout();
|
||||
const payload = jwtDecode<JwtPayload>(token.jwt.value);
|
||||
if (!payload) return token.logout();
|
||||
// Expires in more than 60 Minute
|
||||
if (payload.exp && payload.exp > Math.floor(Date.now() / 1000 + 60 * 60))
|
||||
return token.jwt.value;
|
||||
return update_token(token);
|
||||
try {
|
||||
const payload = jwtDecode<JwtPayload>(token.jwt.value);
|
||||
if (!payload) return token.logout();
|
||||
// Expires in more than 60 Minute
|
||||
if (
|
||||
payload.exp &&
|
||||
payload.exp > Math.floor(Date.now() / 1000 + 60 * 60)
|
||||
)
|
||||
return token.jwt.value;
|
||||
return update_token(token);
|
||||
} catch {
|
||||
return token.logout();
|
||||
}
|
||||
}
|
||||
|
||||
export type TokenInjectType = {
|
||||
|
||||
Reference in New Issue
Block a user