Spaces:
Running
Running
const VITE_API_SERVER_URL = import.meta.env.VITE_API_SERVER_URL || '' | |
console.log(`API Server URL: ${VITE_API_SERVER_URL}`) | |
class API { | |
static async fetchIndex(): Promise<string> { | |
const response = await fetch(VITE_API_SERVER_URL + '/') | |
if (!response.ok) throw new Error('Failed to fetch index.html') | |
return response.text() | |
} | |
static async fetchStaticFile(path: string): Promise<string> { | |
const response = await fetch(`${VITE_API_SERVER_URL}/${path}`) | |
if (!response.ok) throw new Error(`Failed to fetch ${path}`) | |
return response.text() | |
} | |
// Rename the method to fetchExamplesByType | |
static fetchExamplesByType(type: 'image' | 'audio' | 'video'): Promise<any> { | |
return fetch(`${VITE_API_SERVER_URL}/examples/${type}`).then((response) => { | |
if (!response.ok) { | |
throw new Error(`Failed to fetch examples of type ${type}`) | |
} | |
return response.json() | |
}) | |
} | |
// Add a method to fetch a resource via the proxy endpoint to bypass CORS issues | |
static getProxiedUrl(url: string): string { | |
return `${VITE_API_SERVER_URL}/proxy/${encodeURIComponent(url)}` | |
} | |
} | |
export default API | |