🇮🇩
HTML, CSS, dan JS
  • Pengenalan
  • Roadmap
    • Frontend Developer
    • Backend Developer
    • Full Stack Developer
  • Pengenalan Teknologi Web
    • Internet
    • World Wide Web
    • Bagaimana WWW Bekerja
    • Evolusi Web
    • DNS Server
    • Domain dan Hosting
  • Pengelanan VCS
  • Pengenalan HTML
    • HTML Dasar
    • HTML Lanjutan
    • HTML5
    • Latihan
  • Pengenalan CSS
    • CSS Dasar
    • CSS Lanjutan
    • Responsif Web
    • Contoh Kuis (a)
    • Contoh Kuis (b)
    • Contoh Kuis (c)
    • Bootstrap
  • Pengenalan Hak Cipta
  • Pengenalan Javascript
    • Javascript Dasar
    • Javascript DOM
    • Javascript Object
    • Javascript Events
  • JS Web Storage API
    • Local Storage
    • Session Storage
    • Contoh
  • JSON
  • Web API
  • Dokumentasi
  • Pengenalan NodeJS
    • Node.js
    • ExpressJS
  • API Express dengan MySQL + Deploy
    • RESTful API (Read)
    • RESTful API (Create, Update, Delete)
    • Deploy NodeJS ke Heroku
  • Socket.io
  • API Express dengan MongoDB + Deploy
    • MongoDB
    • NodeJS API - Create
    • NodeJS API - Read
    • NodeJS API - Update
    • NodeJS API - Delete
    • NodeJS API - Auth
    • NodeJS API - Auth Lanjutan
    • Deploy Vercel
  • Vue.js
    • Vue
    • Vue Axios
    • Vue Axios Lanjutan
  • React Js
Powered by GitBook
On this page
  • Verifikasi Token
  • Modifikasi app.js
  • Pengujian API Auth Register dan Login di POSTMAN

Was this helpful?

  1. API Express dengan MongoDB + Deploy

NodeJS API - Auth Lanjutan

Verifikasi Token

Ketika kita mengakses API /auth/login, server akan memberikan response berupa token.

Token ini akan digunakan untuk mengakses API misalnya /mahasiswa.

Token untuk mengakses API perlu diverifikasi terlebih dahulu. Untuk melakukan verifikasi, kita perlu menambahkan file verifyToken.js, kita simpan di dalam folder config saja

verifyToken.js
const jwt = require('jsonwebtoken')
const verifyToken = (req, res, next) => {
    const token = req.header('Authorization')
    if (!token) return res.status(400).json({
        status: res.statusCode,
        message: 'Access denied'
    })

    try {
        const verified = jwt.verify(token, process.env.SECRET_KEY) // verify
        res.user = verified
        next() // melanjutkan proses berikutnya
    } catch (error) {
        res.status(400).json({
            status: res.statusCode,
            message: 'Invalid token'
        })
    }
}

module.exports = verifyToken

Kemudian buka file routes/mahasiswa.js, tambahkan import verifyToken dan tambahkan verifyToken pada router

mahasiswa.js
// import package
const express = require('express')
const router = express.Router()

// import Model 
const Mahasiswa = require('../models/Mahasiswa')

// Import verifyToken
const verifyToken = require('../config/verifyToken')

// Read
router.get('/', verifyToken, async(req, res) => {
    try {
        const mahasiswa = await Mahasiswa.find()
        res.json(mahasiswa)
    } catch (error) {
        res.json({message: error})
    }
})

Modifikasi app.js

Buka file app.js, lalu import routes/auth, dan daftarkan ke express

const authRoutes = require('./routes/auth')
app.use('/auth', authRoutes)

Pengujian API Auth Register dan Login di POSTMAN

PreviousNodeJS API - AuthNextDeploy Vercel

Last updated 2 years ago

Was this helpful?

API Auth Register Berhasil
API Auth Register Gagal, karena email sudah terdaftar
API Auth Login Berhasil
API Auth Login Gagal, karena password salah