# Fiber v3 Part 6: Parsing Request Body

Parsing request body adalah proses untuk mendapatkan data dari request body. Request body biasanya digunakan untuk mengirimkan data dari client ke server. Request body biasanya digunakan pada request dengan method `POST`, `PUT`, dan `PATCH`.

Dalam artikel ini, kita akan membahas tentang bagaimana cara melakukan parsing request body pada aplikasi yang dibangun menggunakan Fiber.

## Parsing Request Body dengan JSON

Fiber memungkinkan kita untuk melakukan parsing request body dengan JSON. Berikut adalah contoh bagaimana cara melakukan parsing request body dengan JSON pada aplikasi yang dibangun menggunakan Fiber:

```go
package main

import (
    "github.com/gofiber/fiber/v3"
)

type User struct {
    Name string `json:"name"`
    Age  int    `json:"age"`
}

func main() {
    app := fiber.New()

    app.Post("/user", func(c fiber.Ctx) error {
        user := new(User)

        if err := c.Bind().JSON(user); err != nil {
            return err
        }

        return c.JSON(user)
    })

    app.Listen(":3000")
}
```

Pada contoh kode di atas, kita menggunakan method `Post` untuk melakukan routing. Method `Post` digunakan untuk menangani request dengan method `POST`. Pada contoh kode di atas, kita melakukan routing dengan path `/user`. Pada handler, kita menggunakan `c.Bind().JSON(user)` untuk melakukan parsing request body dengan JSON. Setelah melakukan parsing, kita mengembalikan data yang sudah di-parse dengan method `JSON`.

## Parsing Request Body dengan Form

Fiber juga memungkinkan kita untuk melakukan parsing request body dengan form. Berikut adalah contoh bagaimana cara melakukan parsing request body dengan form pada aplikasi yang dibangun menggunakan Fiber:

```go
package main

import (
    "github.com/gofiber/fiber/v3"
)

type User struct {
    Name string `form:"name"`
    Age  int    `form:"age"`
}

func main() {
    app := fiber.New()

    app.Post("/user", func(c fiber.Ctx) error {
        user := new(User)

        if err := c.Bind().Form(user); err != nil {
            return err
        }

        return c.JSON(user)
    })

    app.Listen(":3000")
}
```

Pada contoh kode di atas, kita menggunakan method `Post` untuk melakukan routing. Method `Post` digunakan untuk menangani request dengan method `POST`. Pada contoh kode di atas, kita melakukan routing dengan path `/user`. Pada handler, kita menggunakan `c.Bind().Form(user)` untuk melakukan parsing request body dengan form. Setelah melakukan parsing, kita mengembalikan data yang sudah di-parse dengan method `JSON`.

## Kesimpulan

Dalam artikel ini, kita telah membahas tentang bagaimana cara melakukan parsing request body pada aplikasi yang dibangun menggunakan Fiber. Fiber memungkinkan kita untuk melakukan parsing request body dengan JSON dan juga dengan form. Dengan Fiber, kita bisa melakukan parsing request body dengan sangat mudah. Pada artikel selanjutnya, kita akan membahas tentang bagaimana cara melakukan testing pada aplikasi yang dibangun menggunakan Fiber.

Sampai jumpa di artikel selanjutnya! 👋
