Skip to main content

WEB SERVICE

Halo , postingan kali ini akan membahas tentang web service dan tutorial dasarnya jadi baca sampai habis ya hehe...

Web Service adalah sekumpulan  application logic  beserta  object-object  dan method-method  yang dimilikinya yang terletak di suatu server yang terhubung ke internet sehingga dapat diakses menggunakan  protocol HTTP dan SOAP (Simple Object Access Protocol  ).

Web service sebagai sekumpulan fungsi program untuk melakukan pekerjaan tertentu yang dalam hal ini tentu manipulasi data – mengambil, menambahkan atau mengubah data. (Priambodo, 2010).

Web Service merupakan suatu sistem yang dirancang untuk mendukung interoperabilitas dan interaksi komunikasi antar sistem (aplikasi) dalam suatu jaringan. (Kurniawan, 2011).

PERKEMBANGAN WEB

Di awal tahun 1980 telah dikenal sebuah teknologi informasi dan komunikasi khususnya dalam bidang website. Pada tahun itu sangat membantu dalam komunikasi antar manusia di dunia karena dalam website tersebut user bisa melihat informasi yang ditampilkan oleh pemilik website. Informasi yang berupa tulisan dapat diakses dari seluruh dunia.
Web terdapat 4 versi yaitu :

Web 1.0

 Web 1.0 merupakan teknologi web yang pertama kali digunakan dalam aplikasi world wide web, atau ada yang menyebut web 1.0. sebagai www itu sendiri yang banyak digunakan dalam situs web yang bersifat personal. Beberapa ciri atau karakteristik web 1.0. adalah:

·      Merupakan halaman web yang statis atau hanya berfungsi untuk menampilkan.
·      Halaman masih didesain sebagai html murni, yang ‘hanya’ memungkinkan orang untuk melihat tanpa ada interaksi
·      Biasanya hanya menyediakan semacam buku tamu online tapi tidak ada interaksi yang intens
·      Masih menggunakan form-form yang dikirim melalui e-mail, sehingga komunikasi biasanya baru satu arah.

Web 2.0

 Web 2.0 adalah sebuah istilah yang dicetuskan pertama kali oleh O’Reilly Media pada tahun 2003, dan dipopulerkan pada konferensi web 2.0 pertama di tahun 2004, merujuk pada generasi yang dirasakan sebagai generasi kedua layanan berbasis web—seperti situs jaringan sosial, wiki, perangkat komunikasi, dan folksonomi—yang menekankan pada kolaborasi online dan berbagi antar pengguna.
“Web 2.0 adalah revolusi bisnis di dalam industri komputer yang terjadi akibat pergerakan ke internet sebagai platform, dan suatu usaha untuk mengerti aturan-aturan agar sukses di platform tersebut. ” Prinsip-prinsip Web 2.0 :
·         Web sebagai platform
·         Data sebagai pengendali utama
·         Efek jaringan diciptakan oleh arsitektur partisipasi
·         Inovasi dalam perakitan sistem serta situs disusun dengan
menyatukan fitur dari pengembang yang terdistribusi dan independen
(semacam model pengembangan “open source”)
·         Model bisnis yang ringan, yang dikembangkan dengan gabungan isi dan layanan
Akhir dari sikllus peluncuran (release cycle) perangkat lunak (perpetual beta)
·         Mudah untuk digunakan dan diadopsi oleh user

Web.3.0

Saat ini adaptasi Web 3.0 mulai dikembangkan oleh beberapa perusahaan di dunia seperti secondlife, Google Co-Ops, bahkan di Indonesia sendiri juga sudah ada yang mulai mengembangkannya, yaitu Li’L Online (LILO) Community.Dalam era web 3.0, pengembangan aspek interaksi sebuah web mulai dipertimbangkan.. Bagaimana sebuah web dapat memberikan sebuah interaksi sesuai dengan kebutuhan informasi setiap pemakaianya, merupakan sebuah tantangan utama dikembangkannya versi Web 3.0 ini.

Web 4.0

 Konsep Web 4.0/4.x adalah private secretary dalam bentuk organisme buatan. Setiap hari seseorang pasti mempunyai sebuah rutinitas. Apapun bentuk rutinitasnya , seluruh rutinitas tersebut bisa diketahui oleh aplikasi komputer/program/tools/device yang kita miliki yang dijalankan secara online. Jadi kemanapun seseorang pergi, dan apapun yang dilakukan semuanya direcord oleh alat-alat tersebut yang nantinya akan digunakan jika ingin mengetahui informasi apa yang dibutuhkan, bahkan teknologi ini bisa mengingatkan, menginterupsi dan memberikan informasi manakala ada perubahan dari sebuah sechedule/rutinitas, membantu melakukan pencarian.

 Inti dari Web 4.0. dapat mengetahui apa saja yang kita lakukan, dan dia juga bisa membantu dalam melakukan pencarian informasi, menyimpan histori pencarian, bahkan mempertemukan orang-orang yang mencari informasi yang sama.

 ARSITEKTUR WEB SERVICE

 Ada tiga standar utama untuk penerapan Web Service. Standar-standar ini mendukung pertukaran data berbasis XML. Tiga standar tersebut meliputi SOAP, WSDL, dan UDDI.

    SOAP (Simple Object Access Protocol)

Protokol ini mendukung proses pengkodean data (biasanya XML) dan transfernya melalui HTTP (Hyper Text Transfer Protocol). Dalam konteks Web Service, SOAP adalah suatu bahasa versi bebas dari protocol RPC (Remote Procedure Caoll) yang berguna untuk proses transaksi melalui HTTP standar. SOAP membuat klien Web Service dapat memilih beberapa parameter mengenai permintaannya dan memberikannya kepada penyedia. Ketika penyedia menanggapi permintaan tersebut, maka terjadilah Web Service.

    WSDL (Web Services Description Language)

Merupakan bahasa berbasis XML yang menjelaskan fungsi-fungsi dalam Web Service. WSDL menyediakan cara untuk memanfaatkan kapabilitas Web Service. WSDL memberitahu mesin lain bagaimana memformat / menterjemahkan permintaan yang diterima berikut respon mereka agar proses Web Service bisa berjalan. Singkatnya WSDL adalah bahasa yang memungkinkan berbagai dokumen yang dibuat dalam aplikasi yang berbeda dapat berkomunikasi.


 UDDI (Universal Description Discovery and Integration)


Adalah semacam direktori global untuk mengelola Web Service. Fungsinya mirip dengan Yellow Pages untuk versi Web Service. UDDI berisi informasi tentang penawaran atau layanan apa yang ditawarkan perusahaan berikut dengan detil teknis bagaimana cara mengaksesnya. Informasi tersebut ditulis dalam bentuk file-file WSDL.

WEB API

API adalah singkatan dari Application Programming Interface, dan memungkinkan developer untuk mengintegrasikan dua bagian dari aplikasi atau dengan aplikasi yang berbeda secara bersamaan. API terdiri dari berbagai elemen seperti function, protocols, dan tools lainnya yang memungkinkan developers untuk membuat aplikasi. Tujuan penggunaan API adalah untuk mempercepat proses development dengan menyediakan function secara terpisah sehingga developer tidak perlu membuat fitur yang serupa. Penerapan API akan sangaat terasa jika fitur yang diinginkan sudah sangat kompleks, tentu membutuhkan waktu untuk membuat yang serupa dengannya. Misalnya: integrasi dengan payment gateway. Terdapat berbagai jenis sistem API yang dapat digunakan, termasuk sistem operasi, library, dan web.

Perbedaan API dan WEB SERVICE

1. Semua web service menggunakan API tapi tidak semua API digunakan sebagai web service

2. Web service memfasilitasi untuk melakukan interaksi antara dua perangkat atau aplikasi melalui jaringan. Sedangkan API bertindak sebagai penghubung antara dua aplikasi berbeda sehingga bisa berkomunikasi satu sama lain baik dengan ataupun tanpa jaringan.

3. Web service hanya menggunakan 3 style yaitu SOAP, REST, atau XML-RPC untuk berkomunikasi sedangkan API dapat menggunakan style apapun.

4. Web service selalu membutuhkan jaringan untuk pengoperasiannya sedangkan API tidak selalu memerlukan jaringan untuk operasinya.

Tutorial membuat web service sederhana dengan php.

Ini adalah struktur foldernya.















1. Buatlah file bernama index.php.
Isikan dengan script ini
-----
<?php
  ini_set('display_errors', 1);
  error_reporting(E_ALL);

  require __DIR__."/core/Bootstrap.php";
?>
-----

 jangan lupa save ya.








Simpanlah di folder yang telah tersimpan didalam htdocs, disini aku pakai folder "sandywebservice".
2. Buatlah folder baru didalam folder "sandywebservice" bernama "config" lalu isikan dengan file baru dengan nama "Routes.php".
Isikan dengan script ini
-----
<?php
  $routes = [
    '/users' => 'Users.php',
    '/' => 'Home.php',
  ];
?>
-----
jangan lupa save ya.










3.Buatlah folder baru didalam folder "sandywebservice" dengan nama "controller" didalam folder tersebut buatlah file bernama "Home.php".
Isikan dengan script ini
-----
<?php
  $url = $_SERVER['REQUEST_URI'];

  // if use folder path
  $urlArr = explode("index.php", $url);
  if (count($urlArr) >= 2){
    $url = $urlArr[1];
  }

    // if use php -S localhost:8000
  if (strpos ($url,"/") !==0){
    $url = "/$url";
  }

  // untuk menghandle url /
  if($url == '/' && $_SERVER['REQUEST_METHOD'] == 'GET') {
    echo json_encode(array('service_name' => 'PHP Service App', 'status' => 'Running'));
  }

?>
-----
jangan lupa save ya.













4. Buatlah file bernama "Users.php" didalam folder controller.
Isikan dengan script ini.
-----
<?php
  $url = $_SERVER['REQUEST_URI'];

  // if use folder path
  $urlArr = explode("index.php", $url);
  if (count($urlArr) >= 2){
    $url = $urlArr[1];
  }

    // if use php -S localhost:8000
  if (strpos ($url,"/") !==0){
    $url = "/$url";
  }

  // untuk menghandle url /users
  if($url == '/users' && $_SERVER['REQUEST_METHOD'] == 'GET'){
    $users = array(
      array(
        'id' => 1,
        'name' => 'Sandy',
        'email' => 'sandy@gmail.com',
        'address' => 'Cimahi',
        'gender' => 'Male'
      ),
      array(
        'id' => 2,
        'name' => 'Satria',
        'email' => 'satria@gmail.com',
        'address' => 'Cimahi',
        'gender' => 'Male'
      ),
      array(
        'id' => 3,
        'name' => 'Pradipto',
        'email' => 'Pradipto@gmail.com',
        'address' => 'Tangerang',
        'gender' => 'Male'
      ),
      array(
        'id' => 4,
        'name' => 'Keysa',
        'email' => 'keysa@gmail.com',
        'address' => 'Batujajar',
        'gender' => 'Female'
      ),
      array(
        'id' => 5,
        'name' => 'Bunga',
        'email' => 'bunga@gmail.com',
        'address' => 'Banten',
        'gender' => 'Female'
      ),
    );
    echo json_encode($users);
  }

  // untuk menghandle /users/{ID}
  if(preg_match("/users\/([0-9])+/", $url, $matches) && $_SERVER['REQUEST_METHOD'] == 'GET'){
    $users = array(
      '1' => array(
        'id' => 1,
        'name' => 'Sandy',
        'email' => 'sandy@gmail.com',
        'address' => 'Cimahi',
        'gender' => 'Male'
      ),
      '2' => array(
        'id' => 2,
        'name' => 'Satria',
        'email' => 'satria@gmail.com',
        'address' => 'Cimahi',
        'gender' => 'Male'
      ),
      '3' => array(
        'id' => 3,
        'name' => 'Pradipto',
        'email' => 'Pradipto@gmail.com',
        'address' => 'Tangerang',
        'gender' => 'Male'
      ),
      '4' => array(
        'id' => 4,
        'name' => 'Keysa',
        'email' => 'keysa@gmail.com',
        'address' => 'Batujajar',
        'gender' => 'Female'
      ),
      '5' => array(
        'id' => 5,
        'name' => 'Bunga',
        'email' => 'bunga@gmail.com',
        'address' => 'Banten',
        'gender' => 'Female'
      ),
    );
    $users = $users[$matches[1]];
   
    echo json_encode($users);
  }
?>
-----
jangan lupa save ya.























5. Buatlah folder didalam folder "sandywebservice" dengan nama "core" isikan folder tersebut dengan file bernama "Bootstrap.php".
Isikan dengan script ini
-----
<?php
  require __DIR__.'/Router.php';
  require __DIR__.'/../config/Routes.php';

  $router = new Router;
  $router -> setRoutes($routes);

  $url = $_SERVER['REQUEST_URI'];
  require __DIR__."/../controller/".$router -> getFilename($url);
?>
-----
jangan lupa save ya.








7. Buatlah file bernama "Router.php" didalam folder "core".
Isikan dengan script ini
-----
<?php
  class Router {
    private $routes = [];

    function setRoutes(Array $routes) {
      $this->routes = $routes;
    }

    function getFilename(string $url){
      foreach($this->routes as $route => $file){
        if(strpos($url, $route) !== false){
          return $file;
        }
      }
    }
  }
?>
-----
jangan lupa save ya.















Setelah semua script dimasukkan saatnya mencoba tes memanggil folder"sandywebservice" didalam browser.

Nyalakan terlebih dahulu XAMPP nya














lalu masuk ke browser dibagian url isi dengan "localhost/sandywebservice/index.php".















Jika tampilannya seperti gambar diatas, maka file yang aku buat barusan sudah berhasil.

Lalu jika kalian menambahkan "users" dibelakang url barusan menjadi seperti ini "localhost/sandywebservice/index.php/users"maka tampilannya akan menjadi seperti gambar dibawah,















Kalau sudah seperti ini, berhasil.

Terakhir jika kita tambah angka dibelakang url barusan menjadi seperti ini "localhost/sandywebservice/index.php/users/2" angka tersebut merupakan data users dengan ID - 2 akan di tampilkan seperti gambar dibawah ini,















Selesai.

SUMBER :
 https://www.kompasiana.com/andrejo/55004b5ea33311926f510a1c/perkembangan-teknologi-web-1-0-ke-web-2-0
http://222monicayoshe.blogspot.com/2018/10/perbedaan-teknologi-web-10-sampai-40.html
http://justwatchyoulike.blogspot.com/2014/01/pengertian-web-service-dan-arsitektur.html
https://www.codepolitan.com/mengenal-apa-itu-web-api-5a0c2855799c8

Comments

Popular posts from this blog

CodeIgniter Tutor - mengubah ukuran upload

Halo disini aku langsung cepet aja ya karena simple tutorialnya pertama Bukalah file grocery_crud.php dari application/config . Ganti baris: $config['grocery_crud_file_upload_max_file_size'] = '20MB'; Menjadi $config['grocery_crud_file_upload_max_file_size'] = '200MB'; Maka kalian telah berhasil melakukan perubahan upload size. Jangan lupa save ya. selanjutnya buka XAMPP. Cari php.ini dan klik php.ini Pada file PHP.ini cari upload_max_filesize ubah ukuran sesuai dengan keinginan. Jangan lupa save ya selesai :D

CodeIgniter Tutor #3 upload audio

Halo, tutorial kali ini aku akan berfokus untuk menyimpan file file seperti audio video namun tutorial ini akan ke audio dulu ya, jadi ,... Let's check this out :D Langkah awal buatlah databasenya terlebih dahulu seperti ini : Sesudah ini kalian jangan dulu lanjutin, ini aku ada tutorial agar terlihat lebih menarik hehe 1. menghilangkan index.php pada url kamu klik 2. mengubah bahasa klik nah ayo lanjut... Setelah database audionya di buat dengan nama table "tb_audio" , masuk ke folder base_url/assets/uploads , buatlah sebuah folder dengan nama "audio". Setelah dibuat, kalian bukalah file Main.php didalam folder "controller" lalu ubah strukturnya dengan menambahkan script ini : -----  $crud->set_subject('File Suara');  $crud->set_field_upload('FILECONTENT','assets/uploads/audio'); ----- before : after : selanjutnya coba panggil "localhost/base_...

WEB SERVICE - TUTORIAL PHP LUMEN SERVICE APP

Halo, untuk kali ini aku akan ngeposting tentang web service yaitu tentang Lumen, disini aku akan tutorial membuat instalasi Lumen Service App ya, langsung aja , Let's Gooo Untuk menginstall Lumen ini aku pakai cmd untuk menginstallnya, tapi sebelum menginstallnya kita butuh php berjalan di cmd, bagaimana caranya? silahkan kunjungi link ini Oh iya tutorial ini dibutuhkan juga php version 7.0.0 keatas bila php kalian version nya dibawah ini segera update dulu php nya download saja xampp terbaru. xampp link Nah saatnya menginstall , pertama-tama kita harus download dulu "composer" disini  https://getcomposer.org/doc/00-intro.md Setelah di download install composernya, jika sudah berikut dibawah adalah konfigurasi nya 1. Buka CMD dan ketik composer --v untuk mengecek apakah sudah terinstall atau belum. 2. ketik perintah ini : create-project --prefer-dist laravel/lumen [NAMA_PROJECT] untuk nama_project ini bisa di ganti sesuai nama folder yang di in...