Cách kiểm tra GraphQL bằng Postman

1. Khái quát chung

Trong hướng dẫn ngắn này, chúng tôi sẽ chỉ ra cách kiểm tra điểm cuối GraphQL bằng Postman.

2. Tổng quan về Lược đồ và Phương pháp

Chúng tôi sẽ sử dụng các điểm cuối được tạo trong hướng dẫn GraphQL của chúng tôi. Xin nhắc lại, lược đồ chứa các định nghĩa mô tả các bài đăng và tác giả:

type Post { id: ID! title: String! text: String! category: String author: Author! } type Author { id: ID! name: String! thumbnail: String posts: [Post]! }

Ngoài ra, chúng tôi có các phương pháp để hiển thị bài đăng và viết bài mới:

type Query { recentPosts(count: Int, offset: Int): [Post]! } type Mutation { writePost(title: String!, text: String!, category: String) : Post! }

Khi sử dụng đột biến để lưu dữ liệu, các trường bắt buộc được đánh dấu bằng dấu chấm than . Cũng lưu ý rằng trong Mutation của chúng tôi , kiểu trả về là Đăng , nhưng trong Truy vấn, chúng ta sẽ nhận được danh sách các đối tượng Đăng .

Lược đồ trên có thể được tải trong phần API Postman - chỉ cần thêm API mới với loại GraphQL và nhấn Tạo Bộ sưu tập :

Khi chúng tôi tải giản đồ của mình, chúng tôi có thể dễ dàng viết các truy vấn mẫu bằng cách sử dụng hỗ trợ tự động hoàn thành của Postman cho GraphQL .

3. Yêu cầu GraphQL trong Postman

Trước hết, Postman cho phép chúng tôi gửi nội dung ở định dạng GraphQL - chúng tôi chỉ cần chọn tùy chọn GraphQL bên dưới:

Sau đó, chúng ta có thể viết một truy vấn GraphQL gốc, giống như một truy vấn giúp chúng ta có tiêu đề , danh mụctên tác giả vào phần QUERY:

query { recentPosts(count: 1, offset: 0) { title category author { name } } }

Và kết quả là chúng ta sẽ nhận được:

{ "data": { "recentPosts": [ { "title": "Post", "category": "test", "author": { "name": "Author 0" } } ] } }

Cũng có thể gửi yêu cầu bằng định dạng thô , nhưng chúng tôi phải thêm Loại nội dung: application / graphql vào phần tiêu đề. Và, trong trường hợp này, cơ thể trông giống nhau.

Ví dụ: chúng tôi có thể cập nhật tiêu đề, văn bản, danh mục, lấy idtiêu đề dưới dạng phản hồi:

mutation { writePost ( title: "Post", text: "test", category: "test", ) { id title } }

Loại hoạt động - như truy vấnđột biến - có thể bị bỏ qua khỏi nội dung truy vấn miễn là chúng ta sử dụng cú pháp viết tắt. Trong trường hợp này, chúng tôi không thể sử dụng tên của hoạt động và các biến, nhưng bạn nên sử dụng tên hoạt động để ghi nhật ký và gỡ lỗi dễ dàng hơn.

4. Sử dụng các biến

Trong phần biến, chúng ta có thể tạo một lược đồ ở định dạng JSON sẽ gán giá trị cho các biến. Điều này tránh nhập các đối số trong một chuỗi truy vấn:

Vì vậy, chúng ta có thể sửa đổi nội dung RecentPosts trong phần QUERY để chỉ định động các giá trị từ các biến:

query recentPosts ($count: Int, $offset: Int) { recentPosts (count: $count, offset: $offset) { id title text category } }

Và chúng tôi có thể chỉnh sửa phần BIẾN HÌNH CỦA GRAPHQL với những gì chúng tôi muốn các biến của mình được đặt thành:

{ "count": 1, "offset": 0 }

5. Tóm tắt

Chúng ta có thể dễ dàng kiểm tra GraphQL bằng Postman, điều này cũng cho phép chúng ta nhập lược đồ và tạo các truy vấn cho nó.

Bạn có thể tìm thấy một bộ sưu tập các yêu cầu trên GitHub.