╔══════════════════════════════════════════════════════════════════════╗
║ GET REQUEST (جلب البيانات) ║
╚══════════════════════════════════════════════════════════════════════╝
```
🌐 SERVER
│
│ returns JSON
▼
```
┌─────────────────────────────┐
│ JSON TEXT │
├─────────────────────────────┤
│ { │
│ "id":1, │
│ "title":"Flutter" │
│ } │
└─────────────────────────────┘
```
│
│ Dio receives data
▼
```
┌─────────────────────────────┐
│ DIO │
├─────────────────────────────┤
│ jsonDecode() │
└─────────────────────────────┘
```
│
▼
```
┌─────────────────────────────┐
│ Map<String,dynamic> │
├─────────────────────────────┤
│ { │
│ 'id':1, │
│ 'title':'Flutter' │
│ } │
└─────────────────────────────┘
```
│
│ fromJson()
▼
```
┌─────────────────────────────┐
│ PostModel │
├─────────────────────────────┤
│ id = 1 │
│ title = Flutter │
└─────────────────────────────┘
```
│
│ Flutter UI
▼
```
┌─────────────────────────────┐
│ Text(post.title) │
│ Text(post.id.toString()) │
└─────────────────────────────┘
═══════════════════════════════════════════════════════════════════════
╔══════════════════════════════════════════════════════════════════════╗
║ POST REQUEST (إرسال البيانات) ║
╚══════════════════════════════════════════════════════════════════════╝
```
👨💻 USER INPUT
```
┌─────────────────────────────┐
│ title = Flutter │
│ body = Learning Dio │
└─────────────────────────────┘
```
│
▼
```
┌─────────────────────────────┐
│ PostModel │
├─────────────────────────────┤
│ id = 1 │
│ title = Flutter │
│ body = Learning Dio │
└─────────────────────────────┘
```
│
│ toJson()
▼
```
┌─────────────────────────────┐
│ Map<String,dynamic> │
├─────────────────────────────┤
│ { │
│ 'id':1, │
│ 'title':'Flutter', │
│ 'body':'Learning Dio' │
│ } │
└─────────────────────────────┘
```
│
│ Dio
▼
```
┌─────────────────────────────┐
│ JSON TEXT │
├─────────────────────────────┤
│ { │
│ "id":1, │
│ "title":"Flutter", │
│ "body":"Learning Dio" │
│ } │
└─────────────────────────────┘
```
│
▼
🌐 SERVER
│
▼
✅ 201 CREATED
```
Dart