GraphQL

GraphQL
Logo GraphQL
Logo programu
Autor Facebook, Inc.
Pierwsze wydanie 11 czerwca 2018[1]
Język programowania oficjalne implementacje m.in. w językach JavaScript, Go, Java, Kotlin, C#, Python, Rust i C/C++[2]
System operacyjny wieloplatformowe
Strona internetowa

GraphQLotwarty[3] język zapytań i manipulacji danych stanowiący sposób komunikacji z serwerem za pośrednictwem API oraz środowisko wykonawcze dla wykonywania zapytań tego typu. Specyfikacja i oprogramowanie zostało opracowane przez firmę Facebook, Inc.[4]. Jest alternatywą dla API typu REST[5].

Język zapytań GraphQL umożliwia uzyskanie struktury odpowiedzi na żądanie na podstawie wyłącznie tych danych i parametrów, które zostały określone w strukturze zapytania, co pozwala zapobiec uzyskaniu zbędnych i nadmiarowych danych podczas takiego procesu[6]. Wynik wykonanego zapytania jest najczęściej zwracany w postaci dokumentu w formacie JSON[7].

Przykład

Poniższy przykład definiuje żądanie typu POST celem uzyskania podstawowych informacji o zamówieniu produktu o numerze porządkowym 10:

{
    orders(id: 10) {
        productsList {
            product {
                name
                price
            }
            quantity
        }
        totalAmount
    }
}

Zawartością odpowiedzi na wysłane żądanie będzie poniższa struktura JSON o przykładowych wartościach, stanowiąca odwzorowanie struktury powyższego żądania:

{
    "data": {
        "orders": [
            {
                "productsList": [
                    {
                        "product": {
                            "name": "orange",
                            "price": 1.5
                        },
                        "quantity": 100
                    }
                ],
                "totalAmount": 150
            }
        ]
    }
}

Zobacz też

Przypisy

  1. Release June 2018. github.com, 2018-06-11. [dostęp 2022-11-06]. (ang.).
  2. GraphQL Code Libraries, Tools and Services. graphql.org. [dostęp 2022-11-06]. (ang.).
  3. Oficjalne repozytorium specyfikacji GraphQL. github.com. [dostęp 2022-11-06]. (ang.).
  4. GraphQL: A data query language. engineering.fb.com, 2015-09-14. [dostęp 2022-11-06]. (ang.).
  5. Marcin Śliwa: GraphQL: czy faktycznie jest następcą REST API?. No Fluff Jobs, 2020-11-25.
  6. GraphQL – Overview. spec.graphql.org, 2022-06-03. [dostęp 2022-11-06]. (ang.).
  7. GraphQL – JSON Serialization. spec.graphql.org, 2022-06-24. [dostęp 2022-11-06]. (ang.).

Linki zewnętrzne

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.