Quickstarters
Feature Overview
Cara Membangun Backend untuk iOS?
40 mnt
pendahuluan dalam tutorial ini, anda akan belajar cara membangun backend untuk ios menggunakan back4app https //www back4app com kami akan membahas integrasi fitur fitur penting back4app—seperti manajemen database, fungsi cloud, rest dan graphql api, otentikasi pengguna, penyimpanan file, dan kueri waktu nyata (live queries)—untuk membuat backend yang aman, dapat diskalakan, dan kuat untuk aplikasi ios anda penawaran backend sebagai layanan dari back4app membantu mengurangi kompleksitas dalam menyiapkan infrastruktur sisi server sambil mempercepat pengembangan anda dapat menyimpan data dalam format gaya database nosql yang fleksibel, mengelola akun pengguna, menambahkan notifikasi push , dan menerapkan kontrol akses yang lebih canggih dalam waktu yang jauh lebih singkat dibandingkan membangun solusi kustom ini berarti anda dapat fokus pada peningkatan pengalaman pengguna dan menerapkan fitur inti, daripada khawatir tentang pemeliharaan server atau penyediaan pada akhir tutorial ini, anda akan memiliki backend yang siap pakai yang dapat disesuaikan dengan skenario dunia nyata, diskalakan untuk mengakomodasi peningkatan lalu lintas, dan diperluas dengan logika yang lebih kompleks atau layanan pihak ketiga anda akan dapat memberikan backend yang andal untuk aplikasi ios anda, mempercepat proses pengembangan , dan meningkatkan antarmuka pengguna anda secara keseluruhan dengan usaha yang lebih sedikit prasyarat untuk menyelesaikan tutorial ini, anda akan membutuhkan akun back4app dan proyek back4app baru memulai dengan back4app https //www back4app com/docs/get started/new parse app jika anda tidak memiliki akun, anda dapat membuatnya secara gratis ikuti panduan di atas untuk menyiapkan proyek anda lingkungan pengembangan ios dasar anda dapat mengembangkan dengan xcode (versi 13 0 atau lebih tinggi) instal xcode https //developer apple com/xcode/ swift package manager atau cocoapods untuk menambahkan parse swift ikuti instruksi github parse swift https //github com/netreconlab/parse swift untuk detail instalasi keterampilan dengan konsep swift dan ios dokumentasi swift apple https //docs swift org/swift book/ jika anda baru mengenal swift atau ios, tinjau dokumen resmi atau tutorial ios dasar sebelum memulai memiliki lingkungan ios yang berfungsi dengan xcode, bersama dengan akun back4app gratis anda, akan membantu anda mengikuti dengan lebih lancar langkah 1 – membuat proyek baru di back4app dan menghubungkan mengapa membuat proyek baru? proyek back4app baru membentuk dasar dari pengembangan backend anda untuk ios ini menyediakan semua alat yang anda butuhkan—database, api, otentikasi, fungsi cloud—untuk membangun backend dengan cepat dan aman panduan masuk ke akun back4app anda buat aplikasi baru dengan mengklik “aplikasi baru” di dasbor back4app anda beri nama aplikasi anda (misalnya, “ios backend demo”) setelah dibuat, proyek baru anda akan muncul di dasbor back4app anda menginstal sdk parse swift dan mengonfigurasi kunci back4app bergantung pada platform parse di belakang layar untuk ios, gunakan sdk parse swift 1\ ambil kunci parse anda di dasbor back4app, pergi ke “pengaturan aplikasi” atau “keamanan & kunci” untuk menemukan id aplikasi kunci klien (atau kunci swift jika berlaku) url server (sering https //parseapi back4app com ) 2\ tambahkan sdk parse swift jika anda menggunakan pengelola paket swift // in package swift or xcode's swift packages package( url "https //github com/netreconlab/parse swift git", from "5 0 0" ) jika anda menggunakan cocoapods , tambahkan di podfile pod 'parseswiftog' kemudian jalankan pod install 3\ inisialisasi parse di dalam appdelegate swift (atau file aplikasi swiftui utama anda), panggil parseswift initialize( ) dengan kredensial anda import swiftui import parseswift @main struct myapp app { init() { do { try await parseswift initialize( applicationid "your app id", clientkey "your client key", // optional serverurl url(string "https //parseapi back4app com")! ) } catch { print("error initializing parse \\\\(error)") } } var body some scene { windowgroup { contentview() } } } selamat! aplikasi ios anda sekarang terhubung ke back4app, dan setiap permintaan atau transaksi data akan melalui parse swift secara otomatis langkah 2 – menyiapkan database 1\ membuat model data back4app menggunakan pendekatan schema di mana setiap kelas/tabel dapat dikelola dari dasbor misalkan kita ingin membuat kelas todo pergi ke “database” di konsol back4app anda klik “buat kelas baru” , beri nama todo , dan tambahkan kolom seperti title (string) dan iscompleted (boolean) 2\ membuat model data dengan agen ai agen ai back4app dapat mempercepat desain skema anda buka agen ai di dasbor anda deskripsikan model data anda dalam bahasa yang sederhana (misalnya, “buat kelas todo baru dengan kolom title dan iscompleted”) biarkan ai membangun skema untuk anda secara otomatis 3\ membaca dan menulis data menggunakan swift sdk dengan parse swift , definisikan struktur data anda dalam kode misalnya import parseswift struct todo parseobject { // parseobject protocol var objectid string? var createdat date? var updatedat date? var acl parseacl? var originaldata data? // custom properties var title string? var iscompleted bool? } // saving func createtodoitem(title string, iscompleted bool) async { var todo = todo() todo title = title todo iscompleted = iscompleted do { let saved = try await todo save() print("saved objectid \\\\(saved objectid ?? "")") } catch { print("error saving \\\\(error)") } } // querying func fetchtodos() async { do { let todos = try await todo query() find() print("fetched \\\\(todos count) todos") } catch { print("error fetching \\\\(error)") } } 4\ membaca dan menulis data menggunakan rest api sebagai alternatif, anda dapat menggunakan panggilan rest misalnya, untuk membuat todo curl x post \\ h "x parse application id your app id" \\ h "x parse rest api key your rest api key" \\ h "content type application/json" \\ d '{"title" "buy groceries", "iscompleted" false}' \\ https //parseapi back4app com/classes/todo 5\ membaca dan menulis data menggunakan api graphql back4app juga menyertakan dukungan graphql berikut adalah contoh mutasi mutation { createtodo(input { fields { title "clean house" iscompleted false } }) { todo { objectid title iscompleted } } } 6\ bekerja dengan live queries (opsional) back4app mendukung pembaruan waktu nyata melalui live queries untuk swift let subscription = try? todo query("iscompleted" == false) subscribe() subscription? handleevent({ event in switch event { case created(let newtodo) print("new todo created \\\\(newtodo)") case updated(let updatedtodo) print("todo updated \\\\(updatedtodo)") default break } }) langkah 3 – menerapkan keamanan dengan acl dan clp 1\ ikhtisar daftar kontrol akses https //www back4app com/docs/security/parse security (acl) mengontrol izin per objek, sementara izin tingkat kelas (clp) menetapkan default untuk seluruh kelas 2\ langkah langkah izin tingkat kelas di dasbor back4app, buka sebuah kelas (misalnya, todo ), lalu klik tab “keamanan” anda dapat membatasi baca/tulis hanya untuk pengguna atau peran yang terautentikasi acl dalam kode saat anda menyimpan parseobject, anda dapat menetapkan acl sesuaikan ini untuk memastikan data anda hanya diakses oleh pengguna yang tepat langkah 4 – menulis fungsi cloud code 1\ mengapa cloud code? cloud code adalah teman terbaik anda untuk menambahkan logika sisi server ke aplikasi ios anda anda dapat menjaga logika atau validasi sensitif jauh dari klien, mengintegrasikan api eksternal, dan menjalankan tugas latar belakang di server 2\ contoh fungsi buat file main js secara lokal (atau di editor online) dengan fungsi parse cloud define("calculatetextlength", async (request) => { const { text } = request params; if (!text) { throw "no text provided"; } return { length text length }; }); 3\ penyebaran gunakan back4app cli https //www back4app com/docs/local development/parse cli atau editor cloud code > fungsi di dasbor instal cli konfigurasi kunci akun anda terapkan 4\ memanggil cloud code dari ios task { do { if let result = try await parsecloud callfunction("calculatetextlength", with \["text" "hello back4app"]) as? \[string int] { print("text length \\\\(result\["length"] ?? 0)") } } catch { print("cloud code error \\\\(error)") } } 5\ menggunakan modul npm dalam package json anda (dalam cloud code), daftar ketergantungan anda kemudian di main js const axios = require('axios'); parse cloud define("fetchposts", async () => { // use axios here }); langkah 5 – mengonfigurasi autentikasi 1\ aktifkan autentikasi pengguna di dasbor back4app anda, kelas user sudah disediakan anda dapat mengatur verifikasi email, reset kata sandi, dan lainnya 2\ contoh kode ios daftar masuk 3\ masuk sosial anda dapat mengintegrasikan masuk sosial (google, apple, facebook) dengan parse swift rujuk ke dokumen masuk sosial https //www back4app com/docs/platform/sign in with apple untuk instruksi rinci langkah 6 – menangani penyimpanan file 1\ menyiapkan penyimpanan file unggah dan ambil file seperti gambar atau dokumen melalui parse untuk swift struct gamescore parseobject { var objectid string? var createdat date? var updatedat date? var acl parseacl? var originaldata data? var score int? var picture parsefile? } func uploadimagedata( data data) async { var file = parsefile(name "photo jpg", data data) do { file = try await file save() print("file url \\\\(file url ?? "")") } catch { print("error uploading file \\\\(error)") } } 2\ mengambil file func fetchimage(file parsefile) async { do { let fetched = try await file fetch() print("fetched localurl \\\\(fetched localurl? absolutestring ?? "")") } catch { print("error fetching file \\\\(error)") } } 3\ pertimbangan keamanan anda dapat mengonfigurasi izin file di pengaturan back4app anda atau di parse config file aplikasi anda misalnya, batasi siapa yang dapat mengunggah atau menghapus file langkah 7 – verifikasi email dan reset kata sandi 1\ mengapa verifikasi? verifikasi email memastikan pengguna memiliki alamat email yang diberikan alur reset kata sandi memungkinkan pengguna memulihkan akun dengan aman 2\ konfigurasi di back4app pergi ke pengaturan aplikasi > pengaturan email pengguna aktifkan verifikasi email konfigurasi email pengirim , template email, dan domain kustom opsional 3\ implementasi task { do { try await user requestpasswordreset(email "johnny\@example com") print("password reset email sent") } catch { print("error resetting password \\\\(error)") } } langkah 8 – penjadwalan tugas dengan cloud jobs 1\ ikhtisar gunakan cloud jobs untuk mengotomatiskan tugas seperti menghapus catatan lama atau mengirim notifikasi harian mereka berjalan di sisi server , tidak dipicu langsung oleh klien 2\ contoh parse cloud job("cleanupoldtodos", async (request) => { const todo = parse object extend("todo"); const query = new parse query(todo); // older than 30 days const cutoff = new date(date now() 30 24 60 60 1000); query lessthan("createdat", cutoff); const oldtodos = await query find({ usemasterkey true }); await parse object destroyall(oldtodos, { usemasterkey true }); return `deleted ${oldtodos length} old todos `; }); jadwalkan pekerjaan ini di dasbor back4app di bawah pengaturan server > pekerjaan latar belakang untuk dijalankan secara berkala langkah 9 – mengintegrasikan webhook 1\ definisi webhook memungkinkan aplikasi anda mengirim data ke layanan eksternal setiap kali peristiwa tertentu terjadi misalnya, memberi tahu saluran slack ketika sebuah todo dibuat 2\ konfigurasi dasbor pergi ke lainnya > webhook dan pilih “tambahkan webhook ” atur endpoint misalnya https //my server com/webhook endpoint pemicu acara misalnya “rekaman baru di kelas todo ” 3\ contoh kode parse cloud aftersave("todo", async (request) => { const { object } = request; // make an http post to an external url // containing the new todo details }); langkah 10 – menjelajahi panel admin back4app 1\ di mana menemukannya panel admin anda dapat diakses melalui “lainnya” > “aplikasi admin” di dasbor back4app buat pengguna admin dan pilih subdomain untuk akses yang mudah 2\ fitur penjelajahan data lihat dan edit kelas dalam format yang ramah pengguna log periksa log server dan log cloud code analitik pantau penggunaan, notifikasi push, dll kesimpulan dalam tutorial ini, anda belajar cara membangun backend untuk ios menggunakan back4app dan parse swift sdk anda mengintegrasikan database yang dapat diskalakan, menerapkan keamanan dengan acl dan clp, menulis fungsi cloud code, mengonfigurasi otentikasi pengguna, menangani penyimpanan file, dan bahkan menjadwalkan tugas latar belakang dengan fitur fitur penting ini, anda dapat menawarkan backend yang andal untuk aplikasi mobile ios sambil fokus pada pengalaman pengguna dan fitur unik langkah selanjutnya jelajahi peran lanjutan dan kontrol akses kustom untuk keamanan multi level integrasikan fitur lanjutan seperti notifikasi push, geo query, atau sumber data eksternal tinjau dokumentasi resmi back4app untuk tips kinerja, analisis log, atau analitik waktu nyata coba tutorial tambahan tentang aplikasi chat, integrasi iot, atau ekspansi e commerce dengan memanfaatkan back4app, anda mendapatkan platform sumber terbuka yang merupakan pilihan yang bagus untuk mengurangi kompleksitas, menyimpan data dengan mudah, dan menggabungkan fungsi waktu nyata ke dalam aplikasi ios anda melaksanakan langkah langkah ini membebaskan anda untuk bekerja pada desain, alur pengguna, atau logika bisnis, menciptakan backend yang kuat untuk aplikasi ios anda dalam waktu singkat