WHAT'S NEW?
Loading...
Cara Membuat Wi-Fi Hotspot di Linux

Pada artikel kali ini, saya akan memberikan cara bagaimana membuat Wi-Fi hotspot di Linux. Kebetulan saya baru melakukan install ulang laptop yang juga biasanya saya jadikan Access Point pada perangkat Wi-Fi yang ada.

Mungkin bagi pengguna Distro seperti Ubuntu ataupun jenis distro lainnya yang sudah memiliki desktop environment yang komplit bisa dengan mudah membuat hotspot, namun berbeda dengan pengguna yang lebih senang menggunakan CLI sehingga memerlukan software tambahan untuk bisa membuat hotspot, yang umum digunakan ialah hostapd.

Langkah yang perlu dilakukan cukup mudah, namun disini saya sampaikan bahwa saya akan menggunakan dhcp server untuk mengatur IP pada client dan saya menggunakan Debian. Pertama lakukan proses installasi untuk package berikut:
$ sudo apt-get install hostapd isc-dhcp-server
Kemudian lakukan konfigurasi pada dhcp server terlebih dahulu, untuk IP address bisa menyesuaikan keinginan.
$ sudo nano /etc/default/isc-dhcp-server
.. INTERFACES="wlan1"

$ sudo nano /etc/dhcp/dhcpd.conf
subnet 59.10.33.0 netmask 255.255.255.0 {
  range 59.10.33.2 59.10.33.16;
  option domain-name-servers 8.8.8.8;
  option routers 59.10.33.1;
}
Perlu diperhatikan pada bagian intefaces biasanya tiap perangkat Wi-Fi memiliki nama yang berbeda, jadi silahkan cek dulu dengan perintah $ ifconfig (lihat bagian Wi-Fi). Lalu langkah terakhir lakukan konfigurasi pada hostapd sebagai berikut.
$ sudo nano /etc/hostapd/hostapd.conf
interface=wlan1
driver=nl80211
ssid=nama_wifi
hw_mode=g
channel=1
macaddr_acl=0
auth_algs=1
ignore_broadcast_ssid=0
wpa=3
wpa_passphrase=password_wifi
wpa_key_mgmt=WPA-PSK
wpa_pairwise=TKIP
rsn_pairwise=CCMP
Setelah selesai, bisa langsung coba jalankan service tersebut.
$ sudo systemctl start hostapd
$ sudo systemctl start isc-dhpcp-server
Lalu coba cek melalui handphone ataupun perangkat lainnya apakah hotspot yang dibuat berhasil berfungsi, jika berhasil coba lakukan akses jaringan ke sosmed ataupun yang lainnya.

Silakan berikan komentar pada kolom dibawah jika ada kendala ataupun koreksi dari konfigurasi diatas.
Cara Setup USB Modem di Linux

Menggunakan USB modem di linux memang terkadang selalu ada masalah, terlebih lagi jika USB modem yang digunakan itu termasuk kategori yang memang sulit untuk digunakan di linux. Namun bagaimanapun juga ada banyak cara yang bisa dilakukan untuk mengatasinya, memang caranya sedikit lebih ribet bagi pemula tapi layak untuk dicoba pastinya.

Saya baru-baru ini dan untuk pertama kalinya menggunakan Distro Linux selain dari Debian (baik turunannya) yaitu Arch Linux. Linux yang satu ini sangat populer, maka dari itu saya putuskan untuk menggunakan mulai dari sekarang dan ntah sampai kapan akan berganti lagi.

Karena Arch Linux dikenal lekat dengan customization, jadi untuk dapat menggunakan USB modem perlu melakukan beberapa langkah, berikut ini saya berikan tahapannya (saya asumsikan kita sudah memiliki DE dan belum bisa menggunakan USB modem di network manager).

Lakukan identifikasi modem USB dan sim card

Jika sim card yang digunakan memiliki PIN, maka perlu untuk menonaktifkannya terlebih dahulu (lewati langkah ini jika tidak memiliki PIN pada sim card).
$ sudo mmcli -i SIMNUMBER --pin=XXXX
Kemudian pastikan modem sudah terdeteksi saat dicolok.
[bill@archy ~]$ lsusb
Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub
Bus 001 Device 004: ID 8087:0a2b Intel Corp.
Bus 001 Device 003: ID 04f2:b57a Chicony Electronics Co., Ltd
Bus 001 Device 002: ID 12d1:1506 Huawei Technologies Co., Ltd. Modem/Networkcard <== status modem yg berhasil terdeteksi
Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
Contoh hasil diatas menandakan USB modem sudah bisa digunakan, tapi pada umumnya saat pertama kali dicolok USB modem akan memiliki 2 mode yaitu sebagai flash storage dan USB modem. Untuk mengatasi hal tersebut cukup ikuti langkah berikut:
$ sudo pacman -S usbutils usb_modeswitch modemmanager mobile-broadband-provider-info nm-connection-editor
$ sudo systemctl enable ModemManager
$ sudo pacman -S modem-manager-gui <== jika menginginkan aplikasi modem GUI (optional)
$ sudo reboot
Sampai disini setelah restart maka seharusnya kita sudah bisa membuat profile koneksi dan membuat koneksi internet dengan USB modem.

Demikianlah langkah sederhana yang dilakukan untuk menggunakan USB modem di Arch Linux, jika mengalami kendala silahkan berikan komentar pada kolom dibawah.

source: USB Modem
image source: maketecheasier
4 Hal Umum Dilakukan Setelah Install Arch Linux

Umumnya saat setelah installasi Arch Linux (baca Tutorial Cara Install Arch Linux), beberapa hal perlu dilakukan agar bisa difungsikan sebagaimana mestinya, yang umum diantaranya adalah membuat user, setup repository, installasi package utilities, dan tentunya desktop environment.

Tahapan tersebut diatas merupakan tahapan dasar pada umumnya, dan juga cara melakukannya tidak begitu rumit. Silakan ikuti tahapan berikut ini hingga selesai, dan khusus untuk desktop environment (DE) saya akan menggunakan XFCE4 yang merupakan DE favorite sejak dulu.

Membuat user

Login menggunakan root terlebih dahulu, pastikan anda mengingat password root yang dibuat, setelah itu pastikan juga perangkat yang digunakan sudah terhubung ke internet, saya menggunakan kabel LAN ataupun jika di virtualbox menggunakan NAT untuk mendapatkan akses internet, pastikan dhcp sudah aktif, lakukan dengan perintah berikut:
# systemctl enable dhcpcd
# systemctl start dhcpcd
# ping archlinux.org
# pacman -Syu
Dari perintah diatas diasumsikan internet sudah terhubung dan kemudian kita melakukan update sistem jika memang ada tersedia update. Setelah selesai kita langsung membuat user baru dan juga diberi akses melakukan perintah sudo.
# useradd -m -G wheel -s /bin/bash bill
# passwd bill
Isikan password user tersebut, kemudian kita lanjutkan dengan melakukan konfigurasi visudo dengan perintah berikut:
# visudo
   %wheel ALL=(ALL) ALL
# pacman -S sudo
Sampai ditahap ini, proses membuat user pun selesai, bisa langsung coba logout dari root dan login menggunakan user baru tersebut.

Setup repository

Tahap ini cukup penting, karena bagi sebagian orang hanya mengandalkan official repository terkadang kurang puas dengan versi package yang diberikan, oleh karena itu diperlukan repository tambahan dan khusus untuk Arch Linux ada repository AUR ( Arch User Repository ), dan juga kita bisa menggunakan multi arch untuk dukungan package 32bit & 64 bit. Berikut ini langkah yang dilakukan.
-- multi arch 32 & 64bit
$ sudo vi /etc/pacman.conf
   [multilib]
    include = /etc/pacman.d/mirrorlist

-- enable Yaourt package (untuk install AUR package)
$ sudo vi /etc/pacman.conf
    [archlinuxfr]
    SigLevel = Never
    Server = http://repo.archlinux.fr/$arch

$ sudo pacman -Syu yaourt

$ yaourt -Syu

$ yaourt package_name (tidak memerlukan perintah sudo)
Selain menggunakan Yaourt, bisa juga menggunakan packer, saya pribadi menggunakan Yaourt untuk menginstall AUR package.
-- Packer installation
$ wget https://aur.archlinux.org/cgit/aur.git/plain/PKGBUILD?h=packer
$ mv PKGBUILD\?h\=packer PKGBUILD
$ makepkg
$ sudo pacman -U packer-*.pkg.tar.xz
$ packer -Syu

Install package utilities

Utilities sendiri merupakan tools sederhana yang umum digunakan semacam zip, wget, vim, tar dan lain sebagainnya, berikut ini sedikit contoh package yang diinstall, sisanya bisa menyesuaikan kebutuhan anda.
$ sudo pacman -S base-devel fakeroot jshon expac git wget
$ sudo pacman -S p7zip p7zip-plugins unrar tar rsync vim

Install desktop environment

Ini merupakan tahapan yang paling ditunggu, menentukan DE yang diinginkan untuk diinstall semua tergantung anda, diatas saya sudah menyampaikan kalau saya akan menginstall Xfce4 dan dengan display manager Lightdm-gtk dan jika anda ingin yang lain bisa googling terlebih dahulu macam-macam DE yang linux punya. Display manager sederhanya sih tools untuk proses login, jadi yang muncul untuk meminta login linux desktop itu disebut display manager. Langsung ke proses install dengan perintah berikut:
$ sudo pacman -S xorg xorg-server
$ sudo pacman -S xfce4 xfce4-goodies
$ sudo pacman -S lightdm lightdm-gtk-greeter
Hanya dengan perintah tersebut DE sudah terinstall, lalu kita perlu lakukan konfigurasi terhadap lightdm untuk mengaktifkan greeter yang terinstall.
$ sudo vi /etc/lightdm/lightdm.conf
   ..SeatDefaults
   greeter-session=lightdm-gtk-greeter
$ sudo systemctl start lightdm
$ sudo systemctl enable lightdm
Sampai disini semua tahapan sudah selesai, untuk mencobanya bisa langsung lakukan reboot, maka akan langsung tampil default greeter login dan DE default dari Xfce4. Silakan tinggalkan komentar jika mengalami kendala.

Image source: youtube
Ancaman Bahaya Serangan WPA2 Krack Attack Pada Wi-Fi

Beberapa hari yang lalu kita mendengar berita mengenai celah keamanan pada Wi-Fi dalam fitur WPA2 yang mana protokol ini sudah ada pada segala macam perangkat Wi-Fi modern tetapi dengan celah keamanan ini seorang attacker dapat mengganti ulang key yang sudah kita buat.

Dengan kelemahan tersebut, seorang attacker hanya perlu menggunakan key reinstallation attacks (KRACKs). Konkretnya, attacker bisa menggunakan teknik serangan baru ini untuk membaca informasi yang sebelumnya diasumsikan telah dienkripsi dengan aman. Hal ini dapat disalahgunakan untuk mencuri informasi sensitif seperti nomor kartu kredit, kata sandi, pesan chat, email, foto, dan sebagainya.

Celah ini berlaku pada semua perangkat yang mendukung Wi-Fi, mulai dari Laptop, router, handphone dan perangkat lainnya yang didukung oleh OS ataupun sistem yang digunakan. Oleh karena itu diperlukan untuk mengupdate patch yang telah disediakan oleh masing-masing pengembang sistem terkait.

Berikut ini contoh video demonstrasi serangan KRACKs menggunakan celah keamanan WPA2.


Jadi segeralah mengupdate perangkat yang anda gunakan untuk menghindari penyalahgunaan yang dilakukan oleh pihak tertentu.

Image source: pocketnow
Source: krackattacks

Tutorial Cara Install Arch Linux

Pada artikel kali ini saya akan mengulas mengenai salah satu Linux favorite yaitu Arch Linux. Umumnya saat menggunakan Arch Linux, proses installasi yang ditawarkan berupa text mode, sehingga menyusahkan user yang belum familiar. Jadi saya akan berikan cara install Arch Linux yang menggunakan text mode didalam virtualbox, tetapi cara ini juga bisa digunakan pada installasi langsung pada perangkat komputer.

Terlebih dahulu silakan download versi terbaru melalui link official ini, jika sudah silakan masuk ke proses installasi (saya asumsikan sudah bisa menggunakan virtualbox ataupun sudah masuk mode install perangkat komputer).

Setup Partisi

# lsblk

# fdisk /dev/sda  (bisa juga sdb atau yang lainnya tergantung dari hasil lsblk)
n (to add a new partition)
p (for primary partition)
1 (default partition number)
(accept default start)
(accept default end)
t (to change partition type)
8e (for LVM partition when using MBR)
i (to verify)
w (save and quit)

Perintah diatas adalah untuk melihat partisi yang tersedia semisal /dev/sda1 (setiap perangkat mungkin akan berbeda), disini saya akan menggunakan LVM dengan jumlah partisi kosong yang disediakan yaitu 30GB.
# pvcreate /dev/sda1

# vgcreate vg_arch /dev/sda1

# lvcreate -L 200M -n boot vg_arch
# lvcreate -L 20G -n root vg_arch
# lvcreate -L 4G -n swap vg_arch
# lvcreate -l 100%FREE -n home vg_arch

Proses partisi diatas menghasilkan:

  • Volume group dengan nama vg_arch
  • partisi /boot = 200MB
  • partisi /root = 20GB
  • partisi /swap = 4GB
  • partisi /home = sisa storage yang ada setelah pembagian partisi diatas
Dari hasil partisi diatas, kita anggap telah sesuai dengan jumlah partisi yang diinginkan, langkah selanjutnya adalah memberikan tipe partisi yang akan digunakan, dicontohkan tipe ext4 ataupun bisa menggunakan tipe yang lain sesuai yang diinginkan.
# mkfs.ext4 /dev/vg_arch/boot
# mkfs.ext4 /dev/vg_arch/root
# mkfs.ext4 /dev/vg_arch/home
# mkswap /dev/vg_arch/swap
# swapon /dev/vg_arch/swap

Setelah memberikan tipe partisi, selanjut kita perlu untuk melakukan proses mounting partisi tersebut sebelum melakukan proses installasi.
# mount /dev/vg_arch/root /mnt
# mkdir /mnt/boot
# mount /dev/vg_arch/boot /mnt/boot
# mkdir /mnt/home
# mount /dev/vg_arch/home /mnt/home

Pada tahap ini kita sudah siap untuk melakukan installasi, cukup dengan perintah berikut kita akan menginstall base system, dan setelahnya membuat isi file fstab.
# pacstrap /mnt base base-devel

# genfstab -U /mnt >> /mnt/etc/fstab

Kita telah berhasil menginstall Arch Linux, tetapi masih ada beberapa hal yang perlu dilakukan yaitu menginstall grub dan membuat hostname serta setting waktu, berikut ini perintah yang diperlukan.
# arch-chroot /mnt /bin/bash

# locale-gen

# vi /etc/locale.conf
.. LANG=en_US.UTF-8  (isikan language yang diinginkan)

# tzselect
# rm /etc/localtime
# ln -s /usr/share/zoneinfo/Asia/Jakarta /etc/localtime

# hwclock --systohc --utc

# vi /etc/mkinitcpio.conf
.. HOOKS="...lvm2 filesystems..." (tambahkan lvm2 pada HOOKS)

# mkinitcpio -p linux

# pacman -S grub

# grub-install --target=i386-pc /dev/sda
# grub-mkconfig -o /boot/grub/grub.cfg

# vi /etc/hostname
.. nama_hostname_yg_diinginkan

Pada saat proses grub-install mungkin akan ketemu peringatan semacam WARNING: Failed to connect to lvmetad. Falling back to internal scanning yang biasa terjadi dalam proses installasi, kadang sering ditemukan saat proses install dalam virtualbox, langkah yang perlu dilakukan sebagai berikut:
# exit
# mkdir /mnt/hostrun
# mount --bind /run /mnt/hostrun
# arch-chroot /mnt /bin/bash
# mkdir /run/lvm
# mount --bind /hostrun/lvm /run/lvm

Setelah itu lakukan lagi perintah grub-install & grub-mkconfig seharusnya warning diatas sudah hilang. Kemudian setelah proses install grub selesai lakukan perintah umount /run/lvm.

Semua proses installasi telah selesai, tahap terakhir yaitu membuat root password dengan perintah yang sederhana, cukup ketikkan "passwd" (tanpa tanda kutip) lalu masukkan root password yang anda inginkan.

Dengan demikian semua proses sudah selesai, kita dapat merestart terlebih dahulu dengan cara berikut:
# passwd (masukkan password root)
# exit
# umount -R /mnt
# reboot

Setelah restart kita sudah bisa login menggunakan user root, tentunya belum ada display manager dan desktop environment yang tersedia, saya akan lanjut ke artikel selanjutnya untuk menginstall GUI pada Arch Linux. Silakan isi kolom komentar dibawah jika ada yang ingin ditanyakan.
[Google Play Store Deal] - Download Premium Android Icon Pack - Part I

Icon menjadi salah satu daya tarik bagi pengguna Android, terdapat banyak sekali icon pack yang dapat didownload secara gratis maupun berbayar. Dan umumnya lebih banyak icon pack yang menarik namun berbayar, kali ini saya akan membagi beberapa icon pack premium yang dapat di download secara gratis dalam beberapa hari dari sekarang, berikut ini diantaranya:

Lanting

[Google Play Store Deal] - Download Premium Android Icon Pack - Part I

Memiliki lebih dari 2.500 custom icon dan 90+ wallpaper yang dapat di download. Untuk mendownload dapat langsung klik link berikut: Download Lanting Icon Pack from Play Store.

Six

[Google Play Store Deal] - Download Premium Android Icon Pack - Part I

Memiliki lebih dari 980 custom icon dan mendukung lebih dari 30 launcher, yang menariknya icon ini terasa seperti icon miliki Nokia. Untuk mendownload dapat langsung klik link berikut: Download Six Icon Pack from Play Store.

S8 UX Amaze

[Google Play Store Deal] - Download Premium Android Icon Pack - Part I

Icon yang satu ini merupakan icon yang sama pada Samsung Galaxy S8 dan Samsung Galaxy Note 8. Jika ingin merasakan sensasi dari icon perangkat high-end, dapat langsung klik link berikut: Download S8 UX Amaze Icon Pack from Play Store.

Aspire UX S8

[Google Play Store Deal] - Download Premium Android Icon Pack - Part I

Aspire juga merupakan icon yang digunakan pada Samsung Galaxy S8 (beta). Jadi silakan langsung mencobanya dengan mendownload melalui link berikut: Download Aspire UX S8 Icon Pack from Play Store.

Nougat Square

[Google Play Store Deal] - Download Premium Android Icon Pack - Part I

Menyediakan lebih dari 1000 icon flat desain vector dengan update regular setiap minggunya dan tentunya dapat digunakan pada berbagai jenis launcher. Silakan langsung mendownload melalui link berikut: Download Nougat Square Icon Pack from Play Store.

Silakan download semua icon pack premium diatas secara Gratis, perlu diketahui icon tersebut tersedia secara gratis hanya dalam beberapa jam dan hari kedepan, jadi pastikan segera download agar tidak kehabisan waktu.


Image credit: Google Play Store, Freepik.
Google Resmi Rilis Android 8.0 Oreo
bgr
Google baru saja merilis Android versi baru yaitu Android 8.0 dengan codename Oreo. Cukup banyak perubahan dan tentunya dengan tambahan fitur baru dan salah satunya cukup menarik perhatian yaitu fitur Rescue Party.

Bootlooping, istilah ini bisa dikatakan tidak begitu asing bagi beberapa orang, karena memang kerap kali terjadi pada perangkat Android. Umumnya memang sering terjadi jika kita melakukan kesalahan saat proses modifikasi, tapi juga sering terjadi pada pengguna biasa yang tidak melakukan modifikasi apapun. Bootloop dapat membuat frustasi karena pengguna tidak dapat menggunakan smartphone mereka akibat proses startup yang berhenti, dan cara penanganannya pun juga cukup sulit.

Oleh karena itu, Google mengenalkan fitur Rescue Party pada Android 8.0 Oreo. Dengan jelas diberikan informasi bahwa Android 8.0 sudah menyediakan 'rescue party' yang akan mengetahui jika komponen core system mengalami crash loop. Rescue Party kemudian dengan segera melakukan serangkaian tindakan untuk melakukan pemulihan pada perangkat, lalu setelah itu Rescue Party akan melakukan reboot ke mode recovery dan meminta pengguna untuk melakukan factory reset.

Fitur ini secara default aktif dalam Android 8.0 Oreo, dan tidak ada kebutuhan hardware khusus untuk mengaktifkannya alias bisa digunakan pada semua device. Beberapa jenis device memang ada yang mengalami bootloop yang terkait oleh software maupun hardware, tetapi dengan adanya fitur ini setidaknya dapat menghilangkan masalah tersebut pada perangkat yang memiliki kesalahan pada hardware sehingga mengakibatkan bootloop.

Source: Google.
Mengenal Dasar Teknologi RESTful Web Service

Saat ini, topik seperti cloud computing, serverless, stateless dan teknologi sumber data mutakhir lainnya sebagai penyalur data perangkat seluler seperti RESTful web service yang banyak digunakan sebagai penyalur data telah meninggalkan kesan bahwa REST (Representational State Transfer) merupakan teknologi baru, tapi faktanya REST ditemukan pada akhir abad ke 20.

Pada artikel ini saya akan menjelaskan sejarah singkat tentang REST (berdasarkan buku) dan mengulas sedikit bagaimana REST bekerja dalam protokol HTTP. Ada beberapa dasar acuan yang perlu diperhatikan ketika ingin mengubah sebuah aplikasi HTTP menjadi aplikasi RESTful service.

Di tahun 1999, ketika sebuah komentar definisi diajukan ke Internet Engineering Task Force (IETF: http://www.ietf.org) melalui RFC 2616: "Hypertext Transfer Protocol - HTTP/1.1." salah satu penulisnya, Roy Fielding yang mendefinisikan sebuah prinsip yang dibangun berdasarkan standar lingkungan HTTP dan URI yang kemudian melahirkan REST yang dikenal sekarang (disertasi lengkap mengenai informasi REST yang dibuat oleh Roy Fielding dapat dilihat melalui link publikasi berikut: http://www.ics.uci.edu/~fielding/pubs/dissertation/rest_arch_style.htm).

Seperti keterangan diatas, prinsip yang dibuat berdasarkan standar linkungan HTTP dan URI. Mari kita lihat dasar utama seputar standar HTTP dan URI, tetap berkaitan dengan cara mengubah sebuah aplikasi HTTP menjadi aplikasi RESTful service.

- resource adalah segalanya

Untuk memahami prinsip ini, kita harus memahami gagasan dari represenstasi adalah dengan format tertentu dan bukan berdasarkan file. Setiap data yang tersedia di internet memiliki sebuah format yang dapat dideskripsikan dengan content-type. Misalnya, text document; JPEG Images; MPEG videos; xml, html, text document; dan binary data yang semuanya adalah resource dengan jenis content-type berikut: image/jpeg, video/mpeg, text/html, text/xml, application/json dan application/octet-stream.

- setiap resource dapat diidentifikasi oleh unique identifier

Karena internet mengandung banyak resource berbeda, semua resource itu harus bisa diakses melalui URI dan harus diidentifikasi secara unik. Selanjutnya, URI bisa dalam format yang mudah dibaca manusia (sebagian orang memang mewajibkannya) terlepas dari kenyataan bahwa penggunanya adalah programmer dan bukan manusia pada umumnya (bukan berprofesi sebagai programmer).

URI menyimpan data secara self-descriptive dan memudahkan pengembangan lebih lanjut. Selain itu, menggunakan URI yang dapat dibaca manusia dapat membantu mengurasi resiko kesalah logis dalam program seminimalis mungkin. Berikut ini beberapa contoh URI:
- http://www.example.com/images/party/2017/newyear

- http://www.example.com/videos/party/2017/newyear

- http://www.example.com/data/documents/outcome?format-xml

- http://www.example.com/data/archives/2015
Pada URI diatas telah mengekspos berbagai jenis resource yang cukup jelas yaitu berupa images, videos, XML document dan binary archive document. Itulah contoh dari URI yang memang harusnya dapat dengan mudah dipahami manusia.

- menggunakan standar metode HTTP

Protokol asli HTTP (RFC2616) mendefinisikan 8 action atau dikenal dengan verb yaitu: GET, POST, PUT, DELETE, HEAD, OPTIONS, TRACE, CONNECT. Urutan 4 verbs awal terasa sudah dapat dikenali dalam konteks resource, terutama ketika mendefinisikan aksi manipulasi data resource yaitu CRUD. Jika secara relative dibandingkan dengan operasi CRUD database SQL, dengan cara yang sama saat menerapkan prinsip REST dengan tepat, HTTP verb dapat digambarkan seperti berikut:
Namun ada pengecualian dalam menggunakan verb. Seperti contoh POST yang digunakan untuk membuat resource. Tapi ketika resource harus dibuat berdasarkan URI tertentu, maka PUT adalah verb yang sesuai (menyisipkan tanggal kedalam bagian URI).
PUT /data/documents/outcome/13082017 HTTP/1.1

Content-Type: text/xml
Host: www.example.com


<?xml version="1.0" encoding="utf-8"?>
<outcome date="outcome">
<Item>Sample item</Item>
<price currency="IDR">3500000</price>
</outcome>

HTTP/1.1 201 Created
Content-Type: text/xml
Location: /data/documents/outcome/13082017

Bagaimanapun juga, dalam aplikasi yang kita punya, mungkin kita ingin menyerahkan ke aplikasi REST dalam menentukan lokasi untuk menempatkan resource yang baru dibuat dan dengan demikian membuatnya berada dilokasi yang sesuai namun masih belum diketahui ataupun tidak temukan.

Misalnya, kita contohkan kita ingin server membuat bagian tanggal pada URI berdasarkan tanggal sekarang. Dalam kasus seperti itu, sangat tepat untuk menggunakan verb POST ke resource utama URI dan membiarkan server merespon dengan lokasi resource yang baru dibuat (outcome date akan terisi otomatis).
POST /data/documents/outcome HTTP/1.1

Content-Type: text/xml
Host: www.example.com

<?xml version="1.0" encoding="utf-8"?>
<outcome date="13082017">
<Item>Sample item</Item>
<price currency="IDR">3500000</price>
</outcome>

HTTP/1.1 201 Created
Content-Type: text/xml
Location: /data/documents/outcome

- resource dapat memiliki banyak jenis representasi

Fitur kunci dari sebuah resource adalah resource dapat direpresentasikan dalam bentuk yang berbeda dari yang disimpan. Jadi resource dalam proses request dan posting bisa dalam berbagai macam jenis representasi, selama format yang ditentukan didukung. Pada contoh sebelumnya, kita telah membuat resource dengan representasi XML, tetapi jika server mendukung format JSON, proses dari representasi berikut tetap dapat diterima.
POST /data/documents/balance HTTP/1.1

Content-Type: application/json
Host: www.mydatastore.com

{
 "balance": {
  "date": ""22082014"",
  "Item": "Sample item",
  "price": {
   "-currency": "IDR",
   "#text": "3500000"
  }
 }
}

HTTP/1.1 201 Created
Content-Type: application/json
Location: /data/documents/balance

Dengan memahami dasar protokol HTTP dapat dengan mudah untuk mengerti cara kerja RESTful service. Jadi untuk itu sebagai pelengkap dalam memahami RESTful service bisa terlebih dahulu membaca cara kerja protokol HTTP yang kemudian merujuk pada HTTP verb yang disebutkan diatas.

Itulah sedikit penjelasan mengenai RESTful service, jika mungkin ada yang kurang jelas ataupun salah dalam penjelasan saya mohon kiranya berikan komentar pada kolom dibawah. Dan untuk artikel selanjutnya saya akan coba berikan contoh membuat RESTful service dengan NodeJS.

Image source: javabeat.