auto-cors-diagnose
Alat analisis masalah CORS otomatis dengan penjelasan yang jelas dan solusi yang bisa langsung diterapkan.
auto-cors-diagnose adalah CLI dan library Node.js yang membantu developer menganalisis masalah CORS (Cross-Origin Resource Sharing) secara otomatis. Tool ini melakukan preflight request (OPTIONS) dan memeriksa response headers untuk menentukan apakah sebuah API mendukung akses lintas origin โ dan jika tidak, tool ini akan memberikan penjelasan yang jelas beserta solusi yang disarankan.
Cocok digunakan untuk:
- Frontend developer yang sering berhadapan dengan error CORS
- Backend developer yang ingin memverifikasi konfigurasi API
- QA engineer yang melakukan validasi endpoint
- Mahasiswa atau pemula yang sedang mempelajari perilaku CORS
โจ Fitur
- ๐ Analisis CORS otomatis untuk endpoint API apa pun
- โ Mendeteksi header CORS yang hilang atau tidak valid
- ๐ง Memberikan rekomendasi yang bisa langsung diterapkan
- ๐ป Bisa digunakan sebagai CLI maupun library
- ๐ Ringan dan minim dependensi
๐ฆ Instalasi
Instal secara global:
npm install -g auto-cors-diagnose
Atau gunakan NPX tanpa instalasi:
npx auto-cors-diagnose <url>
๐ป Penggunaan CLI
Cek konfigurasi CORS dari sebuah API:
npx auto-cors-diagnose https://dummyjson.com/products
Contoh hasil sukses:
{
"status": "OK",
"details": "CORS headers terdeteksi.",
"rawHeaders": {
"access-control-allow-origin": "*",
"access-control-allow-methods": "GET,HEAD,PUT,PATCH,POST,DELETE"
}
}
Contoh hasil gagal:
{
"status": "CORS_BLOCKED",
"reason": "missing-allow-origin",
"details": "Header Access-Control-Allow-Origin tidak ditemukan.",
"solution": "Tambahkan 'Access-Control-Allow-Origin: *' atau tentukan domain yang diizinkan."
}
๐งโ๐ป Penggunaan sebagai Library (Node.js)
import { diagnoseCors } from "auto-cors-diagnose";
const result = await diagnoseCors("https://dummyjson.com/products");
console.log(result);
๐ Struktur Proyek
auto-cors-diagnose
โโ bin/ # Launcher CLI
โโ dist/ # JavaScript hasil build
โโ src/ # Source code TypeScript
โ โโ core/
โ โโ utils/
โ โโ cli.ts
โโ tests/ # Pengujian menggunakan Vitest
๐งช Menjalankan Test
npm run test
๐ค Kontribusi
Kontribusi sangat terbuka! Silakan gunakan alur berikut:
dev branch โ development
feat/<nama-fitur> โ fitur baru
๐ Lisensi
Proyek ini dirilis dengan lisensi MIT License ยฉ 2025 Kikuk Afandi.
End of Project Documentation. Explore other works.