P7 - API Web Servis
P7 - API Web Servis
JSON
○ GET /users/1234
○ HTTP/1.1 200 OK
○ Content-Type: application/vnd.api+json
Contoh RESTful API
● Endpoint
Dalam membuat API, endpoint adalah istilah yang digunakan untuk menyebutkan URL pada API yang sedang dibangun.
Misalnya kita punya URL http://belajaraplikasi.com/auth/token, kita bisa menyebutnya endpoint /auth/token. Format endpoint
dapat disesuaikan dengan kebutuhan.
/mahasiswa POST id, nim, jk, alamat, jurusan Insert new mahasiswa record into database
/mahasiswa/{id} POST nim, jk, alamat, jurusan Update mahasiswa record into database.
insert into
`tbl_mahasiswa`(`id`,`nim`,`nama`,`jk`,`alamat`,`jurusan
`) values
(1,'15119999','muhammad al fatih','L','Jl. P. Puger 2 No
19','Informatika'),
(2,'16119212','Fatimah','P','Jl. Ringin Raya','Sistem
Informasi');
Contoh RESTful API
● Koneksi
Terlebih dahulu membuat folder untuk tempat projek dengan nama api lalu membuat file koneksi.php didalam folder
tersebut, file koneksi.php bertujuan untuk membuat koneksi ke database. Berikut sintaksnya:
<?php
// Membuat variabel, ubah sesuai dengan nama host dan database pada hosting
$host = "localhost";
$user = "root";
$pass = "";
$db = "db_kampus";
//Menggunakan objek mysqli untuk membuat koneksi dan menyimpan nya dalam variabel $mysqli
$mysqli = new mysqli($host, $user, $pass, $db);
?>
Contoh RESTful API
● Mempercantik URL dengan .htaccess
Buatlah file .htaccess dan tuliskan beberapa rule seperti di bawah:
$result = mysqli_query($mysqli, "INSERT INTO tbl_mahasiswa SET $result = mysqli_query($mysqli, "UPDATE tbl_mahasiswa SET
nim = '$_POST[nim]', nim = '$_POST[nim]',
nama = '$_POST[nama]', nama = '$_POST[nama]',
jk = '$_POST[jk]', jk = '$_POST[jk]',
alamat = '$_POST[alamat]', alamat = '$_POST[alamat]',
jurusan = '$_POST[jurusan]'"); jurusan = '$_POST[jurusan]'
WHERE id='$id'");
if($result)
{ if($result)
$response=array( {
'status' => 1, $response=array(
'message' =>'Mahasiswa Added Successfully.' 'status' => 1,
); 'message' =>'Mahasiswa Updated Successfully.'
} );
else }
{ else
$response=array( {
'status' => 0, $response=array(
'message' =>'Mahasiswa Addition Failed.' 'status' => 0,
); 'message' =>'Mahasiswa Updation Failed.'
} );
}else{ }
$response=array( }else{
'status' => 0, $response=array(
'message' =>'Parameter Do Not Match' 'status' => 0,
); 'message' =>'Parameter Do Not Match'
} );
header('Content-Type: application/json'); }
echo json_encode($response); header('Content-Type: application/json');
} echo json_encode($response);
}
Contoh RESTful API
function delete_mhs($id)
{
global $mysqli;
$query="DELETE FROM tbl_mahasiswa WHERE id=".$id;
if(mysqli_query($mysqli, $query))
{
$response=array(
'status' => 1,
'message' =>'Mahasiswa Deleted Successfully.'
);
}
else
{
$response=array(
'status' => 0,
'message' =>'Mahasiswa Deletion Failed.'
);
}
header('Content-Type: application/json');
echo json_encode($response);
}
}
?>
Contoh RESTful API
● Request Method
Selanjutnya kita akan membuat file mahasiswa.php yang akan diakses oleh endpoint, isi dari file adalah untuk pengecekan
request method yang dilakukan dan menjalankan fungsi pada method.php sesuai dengan request methodnya. Berikut
sintaks nya: