Kısa cevap: araya bir API koyun
Mobil uygulama veriye HTTPS API üzerinden erişmelidir. SQL şifreleri backend’de kalır. İstemci kullanıcının oturum bilgisini gönderir; API hangi kayda erişilebileceğini değerlendirir. Bu yaklaşım cihaz, iş kuralları ve veri katmanı arasında açık bir sınır kurar.
Uygulama içine konulan şifre gizli değildir
Mobil paketler analiz edilebilir. Kalıcı SQL şifresi veya servis anahtarı paket içinde yer alıyorsa yalnızca kullanıcı arayüzünü gizlemek yeterli olmaz. Bu bilgileri cihaz yerine sunucu ortamında tutun. İstemcinin ihtiyacı genel bir SQL bağlantısı değil, uygulamasına uygun bir API cevabıdır.
Kimlik doğrulama ile yetkiyi ayırın
Bir token’ın geçerli olması siparişlerin tamamını görme izni anlamına gelmez. API, oturum kimliğini doğruladıktan sonra ilgili kullanıcının organizasyonunu, rolünü ve kaydın sahibini kontrol etmelidir. Cihazdan gönderilen user_id değerini doğrulanmış oturumun yerine kullanmayın.
API cevabını mobil deneyime göre tasarlayın
Liste cevaplarını sayfalayın ve ekranın kullanmadığı alanları göndermeyin. Yükleniyor, boş sonuç, bağlantı hatası ve yetki hatası farklı durumlar olsun. Sunucudan gelen hata mesajının kullanıcının sonraki adımını açıklaması gerekir; iç bağlantı bilgilerini veya sorguları ifşa etmemelidir.
Örnek istek akışı
Aşağıdaki istek bir müşteri uygulaması için temsili API sözleşmesidir; Uygulama Cloud kontrol API’sinin çalışan endpoint’i değildir. Backend oturumu doğrular, yalnızca bu kullanıcının siparişlerini sorgular ve gerekli alanları döndürür.
GET https://api.example.invalid/v1/orders?cursor=<next-page>
Authorization: Bearer <session-token>
Accept: application/jsonMobil ağlarda tekrar davranışını planlayın
İstek başarısız olduğunda kullanıcının aynı düğmeye tekrar basması mümkündür. Sipariş veya ödeme başlatma gibi yazma işlemlerinde idempotency anahtarı ve sunucu tarafı tekilleştirme düşünün. Okuma tekrarlarını sınırlayın; süresiz deneme veya çifte işlem kullanıcı deneyimini bozar.
Dosyalar ve arka plan görevleri
Fotoğraf yükleme iznini API değerlendirmelidir; storage’ın kalıcı anahtarı cihaza verilmez. Dosya dönüştürme veya rapor üretimi worker’a taşınabilir. Bu örnek mimaridir: Uygulama Cloud’da canlı storage ve müşteri worker hizmetleri henüz açık değildir.
Başlamadan önce üç kontrol
İstemci paketinde kalıcı secret var mı? API’de her kayıt için sahiplik kontrolü var mı? Ağ hatası veya tekrar denemede aynı işlem iki kez oluşuyor mu? Bu sorulara açık cevap vermek, seçilecek framework’ten önce sağlam bir veri sınırı kurmanıza yardımcı olur.