Spaces:
Paused
Paused
Download src/main.ts from Rasyiq03/scheffin-api: direct link, hf CLI and curl.
- Browser
- Download file 1.47 kB
-
https://huggingface.co/spaces/Rasyiq03/scheffin-api/resolve/main/src/main.ts
- Command line
-
hf download hf://spaces/Rasyiq03/scheffin-api/src/main.ts
-
curl -L -o main.ts https://huggingface.co/spaces/Rasyiq03/scheffin-api/resolve/main/src/main.ts
1.47 kB
| import { NestFactory } from '@nestjs/core'; | |
| import { AppModule } from './app.module'; | |
| import { Logger } from '@nestjs/common'; | |
| /** | |
| * Penanganan kesalahan global untuk menjaga stabilitas server | |
| */ | |
| process.on('uncaughtException', (err) => { | |
| console.error('[UncaughtException]:', err); | |
| }); | |
| process.on('unhandledRejection', (reason, promise) => { | |
| console.error('[UnhandledRejection] pada:', promise, 'alasan:', reason); | |
| }); | |
| async function bootstrap() { | |
| const logger = new Logger('Bootstrap'); | |
| try { | |
| const app = await NestFactory.create(AppModule); | |
| // Mengaktifkan CORS untuk mengizinkan permintaan dari Google Apps Script | |
| app.enableCors(); | |
| // Konfigurasi port dinamis sesuai environment Hugging Face | |
| const port = process.env.PORT || 7860; | |
| /** | |
| * Mengatur aplikasi agar mendengarkan pada host '0.0.0.0'. | |
| * Langkah ini wajib dilakukan dalam lingkungan Docker/Hugging Face | |
| * agar server dapat menerima koneksi eksternal. | |
| */ | |
| await app.listen(port, '0.0.0.0'); | |
| logger.log(`Aplikasi NestJS berhasil dijalankan pada port ${port}`); | |
| logger.log(`Akses eksternal tersedia melalui antarmuka 0.0.0.0`); | |
| } catch (err: any) { | |
| if (err.code === 'EADDRINUSE') { | |
| logger.error(`Kegagalan: Port ${7860} telah digunakan oleh proses lain.`); | |
| process.exit(1); | |
| } else { | |
| logger.error('Kegagalan saat inisialisasi server:', err); | |
| process.exit(1); | |
| } | |
| } | |
| } | |
| bootstrap(); |