Azure Mobile Services–Menambahkan Script pada proses CRUD

Tutorial sebelumnya dapat dilihat pada tautan berikut: https://erickkurniawan.net/2015/12/19/azure-mobile-servicesmengupdate-data/

Anda juga dapat menambahkan script untuk mengubah atau memfilter data sebelum atau sesudah perintah CRUD dijalankan. Dengan script anda dapat bekerja dengan bermacam-macam objek data sebagai berikut :

  • Request : execute default operation
  • Query : filtering, paging, ordering
  • Table : CRUD operation dan query
  • MSSQL : Direct SQL Statement

Untuk mencoba menggunakan script ikuti langkah berikut :

Pada services yang sebelumnya anda buat buka menu DATA. Kemudian pilih table TodoItem.

image

Kemudian pilih menu SCRIPT, anda dapat menambahkan script ketika operasi insert, update, delete,dan read.

image

Disini perintah script yang dijalankan menggunakan nodejs, Sebagai contoh pada script tambahkan kode berikut :

image

Kemudian tekan Save, dan jalankan aplikasi TodoItem. Tambahkan record baru kedalam aplikasi anda.

image

Setelah anda tambahkan, coba lihat menu log untuk melihat log yang dituliskan ketika perintah insert dijalankan.

image

Maka anda dapat melihat log yang kita create ketika perintah insert di table TodoItem dijalankan.

image

Jika anda sudah menginstall azure cli maka anda juga dapat menggunakan command prompt untuk melihat list daftar mobile services dan script yang sudah anda buat.

image

image

Menambahkan Field baru dengan Script

Jika konfigurasi dynamic schema diaktifkan, maka kita akan dapat menambahkan field pada table secara dinamis (menggunakan script). Cara ini mirip dengan penggunaan entity framework code first.

image

Pada contoh dibawah ini akan ditunjukan bagaimana cara untuk menambahkkan field ‘DateCourseCreated’ secara dinamis dan menambahkan nilai kedalam field tersebut saat perintah insert dijalankan.

image

Menambahkan Field baru dengan Script

Jika konfigurasi dynamic schema diaktifkan, maka kita akan dapat menambahkan field pada table secara dinamis (menggunakan script). Cara ini mirip dengan penggunaan entity framework code first.

image

Pada contoh dibawah ini akan ditunjukan bagaimana cara untuk menambahkkan field ‘DateCourseCreated’ secara dinamis dan menambahkan nilai kedalam field tersebut saat perintah insert dijalankan.

image

Buka fiddler, kemudian tambahkan data baru kedalam table Courses.

image

Seletah itu jalankan method GET untuk melihat output JSON yang dikirimkan.

image

Dapat anda lihat bahwa disetiap record akan ada satu field baru dengan nama ‘DateCourseCreated’. Jika anda lihat pada struktur table, maka field tersebut juga sudah ditambahkan secara permanen.

image

 

Menggunakan Query Object pada SCRIPT

Anda juga dapat memanipulasi objek Query dengan menggunakan SCRIPT. Pada contoh dibawah ini akan ditunjukan bagaimana cara memanipulasi objek query.

image_thumb

Setelah script diatas disimpan, coba jalankan method GET untuk request data dengan menggunakan fiddler. Maka hasil output setelah objek query dimanipulasi adalah sebagai berikut:

image_thumb[1]

Dapat dilihat pada output bahwa data yang ditampilkan adalah data yang field ‘complete’ bernilai ‘false’.

Advertisement

Azure Mobile Services–Mengupdate Data

Tutorial ini akan membahas bagaimana cara mengupdate data table pada Azure Mobile Services.

Tutorial sebelumnya: https://erickkurniawan.net/2015/12/05/azure-mobile-services-menambahkan-data-baru-pada-table/

Untuk melakukan update data anda dapat menggunakan method PUT atau PATCH. Dengan menggunakan PATCH anda cukup mengirimkan field yang akan diupdate. Sebagai contoh kita akan mengupdate field ‘Complete’ menjadi ‘true’ dari data dengan id tertentu.

image

Jika anda lihat record setelah data diupdate adalah sebagai berikut :

image

Untuk mendelete data anda dapat menggunakan method DELETE.

image

Maka record tersebut akan didelete sehingga kita sudah tidak mempunyai record yg tersisa.

Tambahkan beberapa record lagi sebagai data contoh karena kita akan mencoba beberapa variasi query dapat dilakukan.

image

Kita dapat menggunakan sintaks ODATA untuk memfilter record sesuai dengan kebutuhan. Untuk menampilkan data yg field ‘Complete’ bernilai ‘true’ tambahkan sintaks berikut pada url.

https://cloudemiaams.azure-mobile.net/Tables/Courses?$filter=Complete eq true

image

Hasil query dalam format JSON adalah sebagai berikut :

image

Untuk contoh2 query pada ODATA dapat dilihat pada alamat berikut : http://www.odata.org/documentation/odata-version-2-0/uri-conventions/

Misal untuk mengurutkan data course berdasarkan title, anda dapat menggunakan keyword $orderby sebagai berikut:

image

Azure Mobile Services – Menambahkan Data Baru pada Table

Tutorial ini akan membahas bagaimana cara menambahkan data baru pada Azure Mobile Services.

Tutorial sebelumnya dapat dilihat di: https://erickkurniawan.net/2015/11/14/azure-mobile-services-rest-services/

Untuk menambahkan table pada windows azure mobile services, sebenarnya anda tidak perlu menggunakan SQL Server Management studio atau fasilitas managed database di SQL Azure. Anda dapat menambahkan table lewat menu Mobile Services.

image

Pertama kita akan menambahkan table baru dengan nama ‘Courses’.

image

Secara default table yang kita buat akan memiliki empat column sebagai berikut :

image

Jika anda buka table tersebut di SQL Server Management studio, dapat dilihat bahwa column Id akan digunakan sebagai primary key.

image

Tambahkan 3 column baru dengan nama Title – string, Description- string, dan Complete – boolean.

image

Setelah menambahkan column tersebut, sekarang kita akan mencoba untuk menambahkan data kedalam table yang sudah kita buat menggunakan fiddler. Untuk menambahkan data kita akan menggunakan method POST.

image

Jika data berhasil ditambah maka akan muncul status kode ‘201 Created’.

image

Jika kita lihat data yang kita inputkan pada windows azure adalah sebagai berikut :

image

Tutorial selanjutnya akan membahas bagaimana cara untuk mengupdate data pada object Table di Azure Mobile Services.

Azure Mobile Services – REST Services

Pada tutorial kali ini kita akan membahas bagaimana cara mengakses REST service untuk mengambil data dari objek table di Azure Mobile Services.

Tutorial sebelumnya: https://erickkurniawan.net/2015/10/24/azure-mobile-services-bekerja-dengan-sql-azure/

Anda dapat mengakses table TodoItem yang sudah anda buat secara REST. Untuk mengakses table tersebut anda harus memeriksa permission dari table teersebut, caranya anda dapat memilih table TodoItem kemudian pilih menu ‘Permission’.

image

Agar semua orang dapat mengakses dan menquery data, anda harus mengubah pengaturan READ PERMISSION menjadi Everyone.

image

Setelah pengaturan selesai tekan SAVE, kemudian anda bisa mencoba untuk membaca data menggunakan REST. Pada browser tambahkan url berikut :

image

Maka anda dapat melihat bahwa data dengan format JSON yang berisi semua data dari table TodoItem akan ditampilkan.

Anda juga dapat menggunakan program seperti fiddler untuk mengakses REST services tersebut. Berikut contoh penggunaan fiddler.

image

Dapat dilihat file JSON yang akan dihasilkan sebagai berikut :

image

Cara seperti diatas dapat dilakukan namun kurang aman karena semua orang dapat mengakses table TodoItem secara REST. Coba anda kembalikan pengaturan READ PERMISSION menjadi ‘Anybody with the Application Key’.

image

Kemudian buka fiddler kembali, dan akses REST url seperti sebelumnya.

image

Sekarang pesannya adalah Unauthorized karena permission sudah dirubah, anda harus menambahkan application key untuk melakukan request. Untuk mendapatkan application key anda dapat memilih tombol MANAGE KEYS.

image

image

Copy application key, kemudian tambahkan application key tersebut ketika kita melakukan request ke server.

image

Setelah ditambahkan application key, maka anda dapat melihat bahwa request tersebut berhasil dan mengembalikan status 200.

image

Pada tutorial berikutnya akan dijelaskan bagaimana menambahkan table baru pada Azure Mobile Services.