edit
This commit is contained in:
104
src/components/utils/FetchUtils.jsx
Normal file
104
src/components/utils/FetchUtils.jsx
Normal file
@ -0,0 +1,104 @@
|
||||
/* eslint-disable no-unused-vars */
|
||||
import axios from "axios"
|
||||
import { useState } from "react"
|
||||
import './style.css'
|
||||
|
||||
|
||||
|
||||
export class HttpApiMethods {
|
||||
// URL`s
|
||||
APIURL = "https://cyberbloom.zetcraft.ru/api"
|
||||
APIURL_FILES = "https://cyberbloom.zetcraft.ru/api/cyber-boom-files/"
|
||||
// получение мероприятий по ID
|
||||
GetByID = async (id) => {
|
||||
|
||||
let innerUrl = this.APIURL + `/meetings?id=${id}`
|
||||
|
||||
const response = await axios.get(innerUrl)
|
||||
|
||||
return response.data;
|
||||
}
|
||||
// Получение всех мероприятий
|
||||
GetMeetings = async () => {
|
||||
let innerUrl = this.APIURL + `/meetings/list?offset=0&limit=20`;
|
||||
|
||||
const response = await axios.get(innerUrl);
|
||||
|
||||
return response.data;
|
||||
}
|
||||
// Создание мероприятия
|
||||
AddMeetings = async (data) => {
|
||||
let innerUrl = this.APIURL + `/meetings`;
|
||||
|
||||
let response = await axios.postForm(innerUrl, data);
|
||||
return response.data;
|
||||
|
||||
}
|
||||
// Редактирование уже существующего мероприятия
|
||||
EditMeetings = async (data) => {
|
||||
let innerUrl = this.APIURL + `/meetings`;
|
||||
let response = await axios.putForm(innerUrl, data);
|
||||
return response.data;
|
||||
}
|
||||
|
||||
// Удалить мероприятие, пока что не реализовано
|
||||
DeleteMeetings = async (id) => {
|
||||
let innerUrl = this.APIURL + `/meetings?id=${id}`
|
||||
|
||||
const response = await axios.get(innerUrl)
|
||||
|
||||
return response.data;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
const httpApiMethods = new HttpApiMethods() // Создание экземпляра класса HttpApiMethods
|
||||
|
||||
const meets = httpApiMethods.GetMeetings()
|
||||
|
||||
const FetchUtils = () => {
|
||||
|
||||
const [user, setUser] = useState([])
|
||||
|
||||
// async function getData() {
|
||||
// const response = await axios.get(APIURL)
|
||||
// console.log(response.data)
|
||||
// setUser(response.data)
|
||||
// }
|
||||
|
||||
// const removeList = () => {
|
||||
// setUser([])
|
||||
}
|
||||
|
||||
// return (
|
||||
// <>
|
||||
// <button onClick={getData}>Click to Get Data</button>
|
||||
// <button onClick={removeList}>Click to Remove Data Listing</button>
|
||||
// {/* Mapping of data */}
|
||||
// <div>
|
||||
// {/* {Array.isArray(meets) ? (
|
||||
// <ul>
|
||||
// {meets.map((item) => (
|
||||
// <ol key={item.id}>
|
||||
// <li>{item.title}</li>
|
||||
// <li>{item.time}</li>
|
||||
// <li>{item.speakerName}</li>
|
||||
// <li>{item.speackerImage}</li>
|
||||
// <li>{item.splecializations}</li>
|
||||
// <li>{item.type}</li>
|
||||
// <li>{item.speakerTelephone}</li>
|
||||
// <li>{item.speakerEmail}</li>
|
||||
// <li>{item.tags}</li>
|
||||
// <li>{item.videoUrl}</li>
|
||||
// </ol>
|
||||
// ))}
|
||||
// </ul>
|
||||
// ) : (
|
||||
// <p>Bad data type from server!</p>
|
||||
// )} */}
|
||||
// </div>
|
||||
// </>
|
||||
// );
|
||||
// }
|
||||
// export default FetchUtils;
|
Reference in New Issue
Block a user