TKK_E32231400/Front-End/BACKEND_CONNECTION.md

108 lines
2.6 KiB
Markdown

# Koneksi Frontend ke Backend
## Backend Production URL
Backend sudah di-deploy di Railway:
```
https://backend-sterilisasi.com
```
## Konfigurasi
File yang sudah diupdate:
-`src/config.ts` - BACKEND_URL diset ke production
-`.env` - BACKEND_URL diset ke production
## Testing Koneksi
### 1. Test dari Browser/Postman
```bash
# Test root endpoint
curl https://backend-sterilisasi.com/
# Test API endpoint
curl https://backend-sterilisasi.com/sterilisasi/running/last
```
### 2. Test dari Aplikasi
1. Rebuild aplikasi React Native:
```bash
# Stop Metro bundler (Ctrl+C)
# Clear cache
npx react-native start --reset-cache
# Di terminal lain, run aplikasi
npx react-native run-android
# atau
npx react-native run-ios
```
2. Buka aplikasi dan coba fitur yang menggunakan backend:
- Dashboard → pilih alat → Set parameters → Mulai Proses
- History → lihat riwayat dari database
## Switching Environment
### Development (Local Backend)
Edit `src/config.ts`:
```typescript
export const BACKEND_URL = 'http://10.0.2.2:5000'; // Android Emulator
// atau
export const BACKEND_URL = 'http://192.168.1.155:5000'; // Device fisik
```
### Production (Railway)
Edit `src/config.ts`:
```typescript
export const BACKEND_URL = 'https://backend-sterilisasi.com';
```
**PENTING:** Setelah mengubah config, restart Metro bundler dengan `--reset-cache`
## Troubleshooting
### Error: Network request failed
1. **Cek koneksi internet** - Pastikan device/emulator terkoneksi internet
2. **Cek URL backend** - Pastikan `https://backend-sterilisasi.com` bisa diakses dari browser
3. **Cek CORS** - Backend sudah menggunakan CORS, seharusnya tidak ada masalah
4. **Clear cache** - Restart Metro bundler dengan `--reset-cache`
### Error: 404 Not Found
1. **Cek endpoint** - Pastikan endpoint yang dipanggil benar
2. **Cek backend logs** - Lihat logs di Railway dashboard
3. **Test dengan curl** - Test endpoint dari terminal/Postman
### Data tidak muncul
1. **Cek database** - Pastikan MongoDB Atlas terkoneksi
2. **Cek MQTT** - Pastikan alat bisa kirim data ke MQTT broker
3. **Cek logs** - Lihat logs di Railway untuk error
## Monitoring Backend
1. Buka Railway dashboard: https://railway.app
2. Pilih project `backend-sterilisasi`
3. Tab "Logs" - Lihat real-time logs
4. Tab "Metrics" - Lihat usage (CPU, RAM, Network)
5. Tab "Deployments" - Lihat history deployment
## Update Backend
Jika ada perubahan di backend:
```bash
cd Back-end
git add .
git commit -m "Update: deskripsi perubahan"
git push
```
Railway akan otomatis re-deploy dalam beberapa menit.