Skip to content

🔄 Integration (āļāļēāļĢāđ€āļŠāļ·āđˆāļ­āļĄāļ•āđˆāļ­āļĢāļ°āļšāļš) ​

āļĒāļīāļ™āļ”āļĩāļ”āđ‰āļ§āļĒ! āļ„āļļāļ“āđ„āļ”āđ‰āđ€āļĢāļĩāļĒāļ™āļĢāļđāđ‰āļŠāđˆāļ§āļ™āļ›āļĢāļ°āļāļ­āļšāļ—āļąāđ‰āļ‡ 3 āļŠāđˆāļ§āļ™āđāļĨāđ‰āļ§:

  1. React (Frontend): āļŦāļ™āđ‰āļēāļšāđ‰āļēāļ™āļŠāļ§āļĒāļ‡āļēāļĄ
  2. Laravel (Backend): āļŦāļĨāļąāļ‡āļšāđ‰āļēāļ™āļ—āļĢāļ‡āļžāļĨāļąāļ‡
  3. MySQL (Database): āļ„āļĨāļąāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨ

āđƒāļ™āļšāļ—āļ™āļĩāđ‰ āđ€āļĢāļēāļˆāļ°āļĄāļēāļ”āļđāļ āļēāļžāļĢāļ§āļĄāļ§āđˆāļēāļ—āļąāđ‰āļ‡ 3 āļŠāđˆāļ§āļ™āļ™āļĩāđ‰āļ—āļģāļ‡āļēāļ™āļĢāđˆāļ§āļĄāļāļąāļ™āļ­āļĒāđˆāļēāļ‡āđ„āļĢāđƒāļŦāđ‰āđ€āļāļīāļ”āđ€āļ›āđ‡āļ™ Full Stack Web Application


🏗ïļ Architecture (āļŠāļ–āļēāļ›āļąāļ•āļĒāļāļĢāļĢāļĄāļĢāļ°āļšāļš) ​

āđ€āļĢāļēāļˆāļ°āđƒāļŠāđ‰āļĢāļđāļ›āđāļšāļš Client-Server Architecture āđ‚āļ”āļĒāđāļĒāļāļŠāđˆāļ§āļ™āļāļąāļ™āļŠāļąāļ”āđ€āļˆāļ™ (Decoupled)

mermaid
sequenceDiagram
    participant User as ðŸ‘Ī User (Browser)
    participant React as ⚛ïļ React App (Frontend)
    participant Laravel as 🛠 Laravel API (Backend)
    participant MySQL as 🗄ïļ Database

    Note over React, MySQL: Request Cycle

    User->>React: 1. āļ„āļĨāļīāļāļ›āļļāđˆāļĄ "āļ”āļđāļŠāļīāļ™āļ„āđ‰āļē"
    React->>Laravel: 2. Send HTTP Request (GET /api/products)
    Note right of React: Fetch / Axios
    
    Laravel->>MySQL: 3. Query Data (SELECT * FROM products)
    Note right of Laravel: Eloquent ORM
    
    MySQL-->>Laravel: 4. Return Result Rows
    Laravel-->>React: 5. Return JSON Response
    
    React-->>User: 6. Update UI (Show List)
    Note right of React: Re-render

🔑 Key Components ​

1. HTTP Request (āļāļēāļĢāļ‚āļ­āļ‚āđ‰āļ­āļĄāļđāļĨ) ​

React āļˆāļ°āļŠāđˆāļ‡āļ„āļģāļ‚āļ­āđ„āļ›āļĒāļąāļ‡ Laravel āļœāđˆāļēāļ™ API Endpoint (āđ€āļŠāđˆāļ™ http://localhost:8000/api/users)

  • Method: GET (āļ”āļķāļ‡), POST (āđ€āļžāļīāđˆāļĄ), PUT (āđāļāđ‰āđ„āļ‚), DELETE (āļĨāļš)
  • Headers: āļšāļ­āļāļ›āļĢāļ°āđ€āļ āļ—āļ‚āđ‰āļ­āļĄāļđāļĨ (Content-Type: application/json)
  • Body: āļ‚āđ‰āļ­āļĄāļđāļĨāļ—āļĩāđˆāļŠāđˆāļ‡āđ„āļ› (āđ€āļŠāđˆāļ™ āļŠāļ·āđˆāļ­, āļĢāļēāļ„āļē)

2. API Response (āļāļēāļĢāļ•āļ­āļšāļāļĨāļąāļš) ​

Laravel āļˆāļ°āļ•āļ­āļšāļāļĨāļąāļšāļĄāļēāđ€āļ›āđ‡āļ™ JSON Format āđ€āļŠāļĄāļ­

  • Status Code: āļšāļ­āļāļœāļĨāļĨāļąāļžāļ˜āđŒ (200 OK, 201 Created, 404 Not Found, 500 Server Error)
  • Data: āđ€āļ™āļ·āđ‰āļ­āļŦāļēāļ‚āđ‰āļ­āļĄāļđāļĨ

3. Authentication (āļāļēāļĢāļĒāļ·āļ™āļĒāļąāļ™āļ•āļąāļ§āļ•āļ™) ​

āđ€āļžāļ·āđˆāļ­āļ„āļ§āļēāļĄāļ›āļĨāļ­āļ”āļ āļąāļĒ āđ€āļĢāļēāļˆāļ°āđ„āļĄāđˆāđƒāļŦāđ‰āđƒāļ„āļĢāļāđ‡āđ„āļ”āđ‰āļĄāļēāļĨāļšāļ‚āđ‰āļ­āļĄāļđāļĨ React āļˆāļ°āļ•āđ‰āļ­āļ‡āđāļ™āļš Token (āđ€āļŦāļĄāļ·āļ­āļ™āļšāļąāļ•āļĢāļœāđˆāļēāļ™) āđ„āļ›āļāļąāļšāļ—āļļāļ Request

  • āđ€āļĢāļēāļˆāļ°āđƒāļŠāđ‰ Laravel Sanctum āđƒāļ™āļāļēāļĢāļ­āļ­āļ Token
  • React āļˆāļ°āđ€āļāđ‡āļš Token āđ„āļ§āđ‰āđƒāļ™ localStorage āļŦāļĢāļ·āļ­ cookie

🚀 āļžāļĢāđ‰āļ­āļĄāļĢāļķāļĒāļąāļ‡? ​

āļ—āļĪāļĐāļŽāļĩāļžāļ­āđāļĨāđ‰āļ§! āđ„āļ›āļĨāļ‡āļĄāļ·āļ­āļ—āļģāļˆāļĢāļīāļ‡āđƒāļ™ Workshop āļāļąāļ™āđ€āļ–āļ­āļ° āđ€āļĢāļēāļˆāļ°āļŠāļĢāđ‰āļēāļ‡āļĢāļ°āļšāļš "āļˆāļąāļ”āļāļēāļĢāļŠāļīāļ™āļ„āđ‰āļē (Product Management)" āļ•āļąāđ‰āļ‡āđāļ•āđˆāđ€āļĢāļīāđˆāļĄāļ•āđ‰āļ™āļˆāļ™āļˆāļš