Graphql là gì

Chào rất nhiều fan.Sau Lúc tìm hiểu về Graphquốc lộ, bản thân xin mạo muội share chút kiến thức và kỹ năng về nó mang đến hầu như bạn thuộc tiếp cận cùng cách thực hiện Graphquốc lộ thế nào nhé.quý khách đang xem: Graphql là gì

I. Giới thiệu về GraphQL

1.1 Tổng quan

GraphQL là ngôn ngữ làm việc và tróc nã vấn dữ liệu nguồn mngơi nghỉ mang đến API, hỗ trợ mang lại client 1 cách thức tiện lợi để request chính xác số đông gì họ buộc phải, giúp bài toán trở nên tân tiến API thuận lợi rộng theo thời hạn. GraphQL được Facebook phát triển nội bộ vào khoảng thời gian 2012 trước khi desgin công khai vào khoảng thời gian năm ngoái.

Bạn đang xem: Graphql là gì

Graphquốc lộ bao hàm 3 điểm đặc trưng bao gồm:

Cho phép client xác minh đúng đắn mọi tài liệu gì chúng ta cầnGraphquốc lộ tạo cho bài toán tổng hợp tài liệu từ không ít mối cung cấp thuận lợi hơnSử dụng một type system để knhì báo tài liệu.


*

1.2 Trả về chính xác gần như gì các bạn gửi request

Lúc bạn gửi 1 request Graphquốc lộ mang lại API của doanh nghiệp, bạn sẽ nhận ra đúng đắn đầy đủ gì các bạn trải đời trong request, ko rộng không kém.Các tróc nã vấn GraphQL luôn luôn trả về hiệu quả có thể dự đoán thù được.Các áp dụng áp dụng GraphQL rất nkhô hanh và bất biến vì GraphQL điều hành và kiểm soát dữ liệu nhưng nó nhận ra chđọng không hẳn máy chủ.


*

1.3 Nhận các dữ liệu trong một request duy nhất

Các câu query Graphquốc lộ không chỉ hoàn toàn có thể truy vấn xuất các thuộc tính của một dữ liệu mà còn khiến cho Việc trót lọt tru với những đối tượng không giống.Trong Khi những API REST họ tốt dùng yêu cầu yêu cầu request từ không ít URL thì API GraphQL lại có thể đem tất cả tài liệu mà lại áp dụng của khách hàng bắt buộc trong một request tuyệt nhất.Các vận dụng thực hiện GraphQL gồm tốc độ giải pháp xử lý khôn xiết nkhô nóng ngay cả bên trên những kết nối lờ đờ.
*

1.4 Mô tả phần đông gì hoàn toàn có thể với cùng một type system

*

OK, điều này sau 1 hồi hiểu định hướng thì cũng cần được tất cả chút ít thực hành để rõ hơn chúng ta nhỉ?

II. Bắt đầu cùng với GraphQL:

2.1 Chuẩn bị

Với Graphquốc lộ bạn cũng có thể code bởi các ngữ điệu khác biệt, như: C# / .NET, Go, Java, PHPhường, Python thả, Ruby, Perl, ... Các chúng ta có thể xem thêm code kiểm tra tại đây: https://graphql.org/code/

Trong bài xích này bản thân dùng NodeJS 10.15.1 để thử nghiệm.

Xem thêm: 6 Cách Giúp Mẹ Khi Bé Không Chịu Ăn Bột, Ăn Dặm Bằng Cháo Luôn Có Chậm Lớn? ?

2.2 Khởi tạo project

Cách dễ dàng và đơn giản độc nhất để chạy sever API GraphQL là sử dụng module express (một form áp dụng website thông dụng mang lại Node.js). quý khách hàng đã đề xuất thiết lập thêm 2 package express-graphql, graphql.

express: Chạy máy chủ web và thực hiện truy vấn vấn thẳng với hàm graphqlexpress-graphql: Gắn máy chủ API GraphQL bên trên endpoint HTTP. /graphqlgraphql: Package nhằm áp dụng API GraphQL

Chạy commvà line:

npm initnpm install express express-graphql graphql --saveHoặc tạo ra tệp tin package.json với nội dung:

"name": "graph_ql", "version": "1.0.0", "description": "", "main": "index.js", "scripts": "test": "emang lại "Error: no kiểm tra specified" &và exit 1" , "author": "", "license": "ISC", "dependencies": "express": "^4.17.1", "express-graphql": "^0.11.0", "graphql": "^15.3.0"

2.3 Tạo server

Tiếp mang lại tạo nên tệp tin server.js để chạy server:

//Import các thỏng viện bắt buộc dùngvar express = require("express");var graphqlHTTPhường = require("express-graphql");var buildSchema = require("graphql");// Xây dựng một Schema, sử dụng ngữ điệu Schema GraphQLvar schema = buildSchema(` type Query hello: String `);// Root cung cấp công dụng phân giải cho từng endpoint APIvar root = hello: () => return "Hello world!"; ,;//Tạo server với expressvar phầm mềm = express();//Khai báo API graphqlphầm mềm.use("/graphql", graphqlHTTP( schema: schema, rootValue: root, graphiql: true, //áp dụng vẻ ngoài Graphiquốc lộ để mang ra những query GraphQL Theo phong cách thủ công));// Khởi chế tạo hệ thống tại port 4000phầm mềm.listen(4000);console.log("Running a GraphQL API VPS at http://localhost:4000/graphql");

2.4 Start server

Sau Lúc đã tạo được file server, mình đang khởi chạy server node vừa tạo nên cùng với command:

node server.js

*

2.5 Test

Nếu các bạn truy vấn trong trình chú tâm website http://localhost:4000/graphql, các bạn sẽ thấy một hình ảnh cho phép bạn nhập các truy vấn vấn.

Trên browser:

Graphiquốc lộ là một giải pháp tuyệt vời nhất nhằm debug cùng kiểm tra VPS, bởi vì vậy mình khuim bạn nên chạy nó bất cứ bao giờ ứng dụng của khách hàng làm việc chính sách develop.

Xem thêm: Vé Máy Bay Đi Sài Gòn (Sgn) Giá Vé Vietnam Airline Hà Nội Sài Gòn (Sgn) Giá Rẻ

Graphquốc lộ Clients

Thực hiện tại demo curl trên commvà line:

curl -X POST -H "Content-Type: application/json" -d ""query": " hello "" http://localhost:4000/graphqlData response:

"data":"hello":"Hello world!"

III. Tổng kết

Ok, bởi thế dựa vào kiến thức của bản thân và những tư liệu xem thêm, mình đã giới thiệu tới chúng ta về ngôn ngữ truy hỏi vấn GraphQL, có thể nói đây là 1 ngôn ngữ của sau này
theo bản thân cùng với thời điểm hiện nay vậy nên nhỏng vậy!

Mong rằng sau nội dung bài viết này những bạn cũng có thể tiếp cận được GraphQL 1 cách hối hả cùng tiện lợi rộng...


Chuyên mục: Blogs