Automation

CHARLES – KIỂM THỬ API DỄ DÀNG (PHẦN 5 – Rewrite – Edit Body)

Chào mọi người! Nếu ai đã theo dõi Phần 4 về chủ đề Rewrite của Charles vừa rồi của mình thì chỉ đơn giản là chỉnh sửa Status thôi ha. Còn ở phần hôm nay mình sẽ chia sẻ tiếp chủ đề Charles Rewrite này nhưng mà là edit tất cả data của Response trả về. Let’s go!

Hôm nay mình sẽ chuyển sang hướng dẫn với API của 1 app mà mình nghĩ hầu hết ai cũng đều cài sẵn đó là Sổsứckhoẻđiệntử. Và API mình hướng dẫn hôm nay sẽ là https://datkham-api.kcb.vn/api/v1/patients/checkin-his. Để có thể call API này thì bạn sẽ cần down app này về, mở App rồi vào menu “Cá nhân“, sau đó chọn “Nơi đã đến“.

Lúc này API GET (/api/v1/patients/checkin-his) đã được gọi thành công.

Đồng thời màn hình chi tiết “Nơi đã đến” cũng hiển thị. Với data của Response trả về ở trên của mình thì như ảnh dưới:

Giờ mình sẽ hướng dẫn Rewrite tất cả nội dung của Response. Cũng như các bước hướng dẫn Rewrite trước đây, ta sẽ Add Location bằng cách bấm Add, sau đó điền nội dung và bấm OK để lưu location.

Tiếp đến sẽ bấm Add Action để mở cửa sổ Rewrite Rule. Và thực hiện những bước sau:

Bước 1: Chọn Type tương ứng. Ở đây mình sẽ chọn “Body

Bước 2: Tick chọn “Response

Bước 3: Bỏ trống phần “Match” và đi đến phần “Replace” rồi điền data mình muốn thay đổi vào.
Ví dụ dummy data của mình:
{
"data": {
"listData": [
{
"locationName": "ABC",
"checkinTime": 1633400515000
},
{
"locationName": "DEF",
"checkinTime": 1633400515000
}
],
"count": 2
},
"mess": {
"code": 1,
"description": "Pass"
}
}

Bước 4: Tick chọn “Replace all” để thay thế tất cả

Bước 5: Bấm “OK” để lưu.

Sau khi hoàn tất các bước thì màn hình Rewrite Settings sẽ hiển thị như này. Và bấm OK để lưu.

Bây giờ mình sẽ thử gọi lại API GET (/api/v1/patients/checkin-his) để xem kết quả trả về như thế nhé.

Như vậy là phần Body của Response đã được thay đổi. Và app cũng hiển thị data như phần Response mới.

Như vậy là mình đã Rewrite thành công rồi đấy.

Ngoài ra, khi mình thay đổi dummy data như này:
{
"data": {
"listData": [
{
"locationName": "ABC",
"checkinTime": 1633400515000
},
{
"locationName": "DEF",
"checkinTime": 1633500515000
}
],
"count": 2
},
"mess": {
"code": 1,
"description": "Pass"
}
}

… thì trên app sẽ hiển thị thành 2 ngày khác nhau:

Đó là do mình thay đổi giá trị của checkinTime theo Timestamp. Bạn có thể convert từ Timestamp sang Date&Time và kiểm tra tại đây: https://www.unixtimestamp.com/

Vậy là hôm nay mình đã hướng dẫn Rewrite cho toàn bộ Body của Response. Ở phần sau mình sẽ hướng dẫn tiếp về Charles API Rewrite khi thay đổi một số data bằng cách sử dụng regex. Chúc các bạn thử thành công Rewrite của ngày hôm nay ha!

5 2 votes
Article Rating
Subscribe
Notify of
guest
2 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Thành Trung
6 months ago

Làm bài lấy api momo đi bạn ơi