Pertama-tama, keduanya adalah inisial yang umum; mereka tidak perlu ditakuti.
Sekarang, CRUD adalah istilah sederhana yang disingkat karena itu adalah fitur umum di banyak aplikasi, dan lebih mudah untuk mengatakan CRUD . Ini menggambarkan 4 operasi dasar yang dapat Anda lakukan pada data (atau sumber daya). Buat, Baca, Perbarui, Hapus.
Namun REST, adalah praktik bernama (seperti AJAX), bukan teknologi itu sendiri. Ini mendorong penggunaan kemampuan yang telah lama melekat dalam protokol HTTP, tetapi jarang digunakan.
Ketika Anda memiliki URL (Uniform Resource Locator ) dan mengarahkan browser Anda ke sana melalui baris alamat, Anda mengirim permintaan HTTP . Setiap permintaan HTTP berisi informasi yang dapat digunakan server untuk mengetahui respons HTTP mana yang harus dikirim kembali ke klien yang mengeluarkan permintaan.
Setiap permintaan berisi URL, sehingga server tahu sumber daya mana yang ingin Anda akses, tetapi juga bisa berisi metode . Metode menjelaskan apa yang harus dilakukan dengan sumber daya itu.
Tetapi konsep "metode" ini tidak terlalu sering digunakan.
Biasanya, orang hanya akan menautkan ke halaman melalui metode GET, dan mengeluarkan segala jenis pembaruan (penghapusan, penyisipan, pembaruan) melalui metode POST.
Dan karena itu Anda tidak dapat memperlakukan satu sumber daya (URL) sebagai sumber daya yang sebenarnya. Anda harus memiliki URL terpisah untuk dihapus, disisipkan, atau diperbarui dari sumber yang sama. Sebagai contoh:
http://...com/posts/create- POST request -> Goes to posts.create() method in the server
http://...com/posts/1/show- GET request -> Goes to posts.show(1) method in the server
http://...com/posts/1/delete - POST request -> Goes to posts.delete(1) method in the server
http://...com/posts/1/edit- POST request -> Goes to posts.edit(1) method in the server
Dengan REST, Anda membuat formulir yang lebih pintar karena mereka menggunakan metode HTTP lain selain POST, dan program server Anda untuk dapat membedakan antara metode , bukan hanya URL. Jadi misalnya:
http://...com/posts - POST request -> Goes to posts.create() method in the server
http://...com/posts/1 - GET request -> Goes to posts.show(1) method in the server
http://...com/posts/1 - DELETE request -> Goes to posts.delete(1) method in the server
http://...com/posts/1 - PUT request -> Goes to posts.edit(1) method in the server
Ingat, satu URL menjelaskan satu sumber daya. Satu pos adalah sumber tunggal. Dengan REST Anda memperlakukan sumber daya dengan cara yang seharusnya diperlakukan. Anda memberi tahu server sumber daya mana yang ingin Anda tangani, dan cara menanganinya.
Ada banyak fitur lain untuk "RESTful architecture", yang dapat Anda baca di Wikipedia, artikel atau buku lain, jika Anda tertarik. Di sisi lain, tidak banyak yang bisa dilakukan CRUD.