Cara Mudah Membuat REST API Menggunakan Express JS #8: Router DELETE - Menghapus Data


Rizqi Maulana
PHP/Javascript Backend Developer

Router terakhir dalam tutorial ini yang akan kita buat adalah router untuk menghapus data. Router ini menggunakan http request method DELETE.

Karena kita masih fokus pada router untuk CRUD data pada tabel posts. Buka kembali file router/posts.js.

Ubah baris kode pada bagian ini:

routers/posts.js

/**
 * Route untuk menghapus artikel berdasarkan ID
 */
router.delete('/:id', function(req, res, next){
 
});

Menjadi Sepert ini:

router/posts.js

/**
 * Route untuk menghapus artikel berdasarkan ID
 */
router.delete('/:id', async function(req, res, next){
  try {
    const id = req.params.id
    const post = models.posts.destroy({
      where: {
        id: id
      }
    })

    if (post) {
      res.json({
        'status': 'OK',
        'messages': 'Post berhasil dihapus'
      })
    }
  } catch(err) {
    res.status(400).json({
      'status': 'ERROR',
      'messages': err.message
    })
  }
});

Baris kode di atas digunakan untuk proses menghapus data. Pertama kita menangkap id yang dikirim sebagai parameter id.

const id = req.params.id

kemudian kita melakukan query untuk menghapus data dengan sebuah method destroy yang tersedia pada package Sequelize.

const post = models.posts.destroy({
  where: {
    id: id
  }
})

Selanjutnya mengembalikan response status OK jika data berhasil dihapus atau mengembalikan response status ERROR(400) beserta pesan errornya.

...

	if (post) {
	  res.json({
	    'status': 'OK',
	    'messages': 'Post berhasil dihapus'
	  })
	}

} catch(err) {
  res.status(400).json({
    'status': 'ERROR',
    'messages': err.message
  })
}

...



Lakukan testing API menggunakan tool favorit kamu semisali Curl atau Postman.

Untuk mendownload atau melihat full source code pada tahap ini, silahkan kunjungi repo github

https://github.com/sakukode/simple-restapi/tree/v0.7


Rizqi Maulana
PHP/Javascript Backend Developer
KEBIJAKAN KOMENTAR

Saat memberikan komenatar silahkan memberikan informasi lengkap tentang error, seperti: screenshot, link kode, dll. Baca aturan komentar kami

KOMENTAR