This is an old revision of the document!
Acest laborator reprezinta integrarea frontend-ului cu backend-ul creat pentru aceasta aplicatie. Vom introduce o biblioteca importanta: Axios, cu care vom putea face aceasta integrare.
Cum sa interactionati cu un server, care sunt tipurile de cereri si cum sa manipulam raspunsul.
npm install axios
Pentru a avea toate informatiile intr-un loc, vom crea un fisier in care sa tinem toate rutele.
const base = "https://localhost:7002/api/v1/";
const routes = {
books: {
addBook: "Books/addBook",
getAll: "Books/viewAllBooks",
getBook: (id) => `Books/viewStatusAboutBook/${id}`,
deleteBook: (id) => `Books/deleteBook/${id}`,
},
metrics: {
getBook: (id) => `Metrics/metricsAboutBook/${id}`,
},
rentals: {
rentBook: "Rentals/rentBook",
myRentals: "Rentals/viewMyRentals",
returnBook: (id) => `Rentals/returnBook/${id}`,
},
profile: {
setupProfile: "Profiles/registerProfile",
getProfile: "Profiles/viewProfile",
},
};
export { base, routes };
De ce o instanta de Axios? Pentru ca in diferite cazuri avem nevoie de o configurare mai specifica pentru interactiunea cu backend-ul. De asemenea, aceasta instanta ne ajuta pentru a folosi interceptori. Acesti interceptori ne pot ajuta in 2 moduri:
In cazul nostru, nu a trebuit sa folosim acesti interceptori.
import axios from "axios";
import { base } from "./Api";
const axiosInstance = axios.create({
baseURL: base,
timeout: 1000,
});
export default axiosInstance;