86 lines
2.6 KiB
JavaScript
86 lines
2.6 KiB
JavaScript
import { useP2postStore } from '../stores/p2postStore'
|
|
|
|
const p2postStore = useP2postStore()
|
|
|
|
const p2postApiUrl = "/api/p2post"
|
|
|
|
export const p2postApi = {
|
|
async getMyUsers(){
|
|
try {
|
|
const response = await fetch(p2postApiUrl+'/myusers')
|
|
if (!response.ok) {
|
|
const errorText = await response.text();
|
|
throw new Error(`Error fetching posts: ${response.status} - ${errorText}`);
|
|
}
|
|
const result = await response.json()
|
|
p2postStore.users = result
|
|
return result;
|
|
} catch (error) {
|
|
console.error("Error fetching posts:", error);
|
|
throw error;
|
|
}
|
|
},
|
|
|
|
async getPosts(){
|
|
try {
|
|
const response = await fetch(p2postApiUrl+'/posts')
|
|
if (!response.ok) {
|
|
const errorText = await response.text();
|
|
throw new Error(`Error fetching posts: ${response.status} - ${errorText}`);
|
|
}
|
|
const result = await response.json()
|
|
return result;
|
|
} catch (error) {
|
|
console.error("Error fetching posts:", error);
|
|
throw error;
|
|
}
|
|
},
|
|
|
|
async createPosts(user, content, medias, networks){
|
|
const data = {"user": user, "content": content, "medias": medias, "networks": networks};
|
|
const requestOptions = {
|
|
method: 'POST',
|
|
headers: {'Content-Type': 'application/json',},
|
|
body: JSON.stringify(data),
|
|
};
|
|
try {
|
|
const response = await fetch(p2postApiUrl+"/posts", requestOptions);
|
|
if (!response.ok) {
|
|
const errorText = await response.text();
|
|
throw new Error(`Error fetching posts: ${response.status} - ${errorText}`);
|
|
}
|
|
|
|
const result = await response.json();
|
|
return result;
|
|
|
|
} catch (error) {
|
|
console.error("Error fetching posts:", error);
|
|
throw error;
|
|
}
|
|
|
|
},
|
|
|
|
async uploadFile(file) {
|
|
const formData = new FormData();
|
|
formData.append("file", file);
|
|
|
|
try {
|
|
const response = await fetch(p2postApiUrl + "/medias", {
|
|
method: "POST",
|
|
body: formData,
|
|
});
|
|
|
|
if (!response.ok) {
|
|
const errorText = await response.text();
|
|
throw new Error(`Error uploading file: ${response.status} - ${errorText}`);
|
|
}
|
|
|
|
const result = await response.json();
|
|
return result;
|
|
|
|
} catch (error) {
|
|
console.error("Error uploading file:", error);
|
|
throw error;
|
|
}
|
|
}
|
|
} |