Đi vênh vang
Sử dụng Swagger để khắc phục sự cố ứng dụng
Công cụ tiếp theo chúng ta có thể sử dụng để kiểm tra và gỡ lỗi ứng dụng của mình là Swagger . Chúng tôi đã làm quen với nó trước đó; như bạn nhớ, trong đó, bạn có thể thấy tất cả các điểm cuối của ứng dụng đang được phát triển, chạy chúng và nhận kết quả. Hãy xem xét điều này chi tiết hơn.
Ủy quyền trong Swagger
Trước hết, hãy nhớ rằng Middleware Token Auth được bật theo mặc định, kiểm soát quyền truy cập vào điểm cuối cho hầu hết các điểm cuối. Nó từ chối quyền truy cập đối với những người dùng chưa được cấp quyền hoặc thậm chí đã thông qua nó nhưng không có quyền truy cập thích hợp (ví dụ: họ thuộc nhóm Users và điểm cuối dành riêng cho Admins ).
Bạn có thể tìm thấy mã thông báo ủy quyền cần thiết bằng cách sử dụng Developer Tools . Tất cả những gì bạn cần làm là đăng nhập vào ứng dụng web đã xuất bản và sau đó thực hiện bất kỳ yêu cầu nào. Mã thông báo sẽ được sử dụng trong Request Headers . Ví dụ: bạn có thể thấy nó trên ảnh chụp màn hình cao hơn một chút vào thời điểm chúng tôi thực hiện yêu cầu GET để lấy dữ liệu về các quốc gia.
Hãy xem cách bạn có thể lấy nó trực tiếp trong Swagger . Để thực hiện việc này, hãy tìm điểm cuối chịu trách nhiệm cấp quyền ( Auth group, POST /Auth/ endpoint) và nhấp vào nút " Try it out" . Điểm cuối này có hai tham số, Login và Password . Chỉ định chúng và nhấp vào Execute để gửi yêu cầu. Nhân tiện, tại đây, việc sử dụng Developer Tools cũng có thể hữu ích; bạn có thể mở chúng để nghiên cứu chi tiết hơn về yêu cầu và phản hồi.
Phản hồi sẽ nhận được mã thông báo cần thiết, cũng như thông tin chi tiết về người dùng và các phiên của anh ta.
Bạn có thể thấy rằng phản hồi nhận được không khác nhiều so với phản hồi mà chúng ta đã thấy trong Developer Tools . Đồng thời, Swagger có một lợi thế không thể phủ nhận ở chỗ nó có thể kiểm tra bất kỳ yêu cầu nào và khởi chạy các điểm cuối với các tham số cần thiết ở dạng thuận tiện. Nhưng trước khi tiến hành thử nghiệm như vậy, hãy nhấp vào Authorize và sử dụng mã thông báo nhận được để xác nhận ủy quyền.
Gửi yêu cầu bằng Swagger
Bây giờ, hãy gửi yêu cầu thông qua Swagger để lấy dữ liệu về thành phố đầu tiên mà chúng tôi bắt gặp, với dân số hơn 5 triệu người và có từ " World " trong phần mô tả. Để thực hiện việc này, hãy mở điểm cuối GET /city/ và điền các thông số cần thiết:
- _limit = 1 (chỉ cần một thành phố)
- population_from = 5000000 (giá trị dân số nên được kiểm tra)
- _search_in = info (chỉ tìm kiếm trong trường info )
- _search = World (tìm từ World )
Phản hồi nhận được cho thấy rằng yêu cầu đã được thực hiện chính xác. Chúng tôi đã nhận được thông tin về một thành phố như vậy (chúng tôi thấy rằng count = 3 , có nghĩa là cơ sở dữ liệu chứa thông tin về ba thành phố phù hợp) và không nhận được bất kỳ dữ liệu nào về quốc gia nơi thành phố đó tọa lạc ( “country”: null ), vì truy vấn không cần trình bày dữ liệu từ các bảng có liên quan (nếu cần, nên sử dụng tham số _with ).