{"id":72074,"date":"2024-08-03T22:36:49","date_gmt":"2024-08-03T19:06:49","guid":{"rendered":"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/"},"modified":"2024-08-03T22:36:49","modified_gmt":"2024-08-03T19:06:49","slug":"graphql-zukunft-der-apis-1jge","status":"publish","type":"post","link":"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/","title":{"rendered":"GraphQL: \u0622\u06cc\u0646\u062f\u0647 API \u0647\u0627 \ud83c\udf10"},"content":{"rendered":"<p>Summarize this content to 400 words in Persian Lang<br \/>\n            GraphQL \u062f\u0631 \u0645\u0642\u0627\u0628\u0644 REST: \u0645\u0632\u0627\u06cc\u0627 \u0648 \u0645\u0639\u0627\u06cc\u0628 \u0632\u0628\u0627\u0646 \u06a9\u0648\u0626\u0631\u06cc \u0645\u062f\u0631\u0646 \u0631\u0627 \u0628\u0631\u0627\u06cc API\u0647\u0627 \u06a9\u0634\u0641 \u06a9\u0646\u06cc\u062f!  \ud83c\udf10<\/p>\n<p>\u062a\u0635\u0648\u0631 \u06a9\u0646\u06cc\u062f \u0628\u062a\u0648\u0627\u0646\u06cc\u062f \u06cc\u06a9 API \u0631\u0627 \u0633\u0641\u0627\u0631\u0634\u06cc \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062f\u0642\u06cc\u0642\u0627\u064b \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632\u062a\u0627\u0646 \u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u062f\u060c \u0646\u0647 \u0628\u06cc\u0634\u062a\u0631 \u0648 \u0646\u0647 \u06a9\u0645\u062a\u0631.  \u0627\u06cc\u0646 \u0648\u0639\u062f\u0647 GraphQL \u0627\u0633\u062a.  \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 API \u0647\u0627\u06cc RESTful \u0633\u0627\u0644 \u0647\u0627 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0628\u0648\u062f\u0647 \u0627\u0646\u062f\u060c GraphQL \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u0645\u062f\u0631\u0646 \u0648 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u062a\u0631\u06cc \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc \u062f\u0647\u062f.  \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647 \u0646\u06af\u0627\u0647\u06cc \u062f\u0642\u06cc\u0642 \u0628\u0647 GraphQL \u0645\u06cc \u0627\u0646\u062f\u0627\u0632\u06cc\u0645 \u0648 \u0645\u0632\u0627\u06cc\u0627 \u0648 \u0645\u0639\u0627\u06cc\u0628 \u0622\u0646 \u0631\u0627 \u0628\u0627 API \u0647\u0627\u06cc RESTful \u0645\u0642\u0627\u06cc\u0633\u0647 \u0645\u06cc \u06a9\u0646\u06cc\u0645.  \u0645\u0646 \u0642\u0628\u0644\u0627\u064b \u062f\u0631 \u0645\u0642\u0627\u0644\u0647 \u0642\u0628\u0644\u06cc \u062a\u0648\u0636\u06cc\u062d \u062f\u0627\u062f\u0647 \u0627\u0645 \u06a9\u0647 \u062f\u0642\u06cc\u0642\u0627\u064b REST API \u0647\u0627 \u0686\u06cc\u0633\u062a<\/p>\n<p>API \u0647\u0627\u06cc REST \u0631\u0627 \u062f\u0631\u06a9 \u06a9\u0631\u062f\u0647 \u0648 \u0627\u0632 \u0622\u0646\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062fAPI \u0647\u0627: \u0647\u0645\u0647 \u062c\u0627 \u062d\u0627\u0636\u0631 \u0647\u0633\u062a\u0646\u062f \u0648 \u0647\u0645\u0647 \u0627\u0632 \u0622\u0646\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u0646\u062f\u060c \u0627\u0644\u0628\u062a\u0647 \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u06cc\u0645.  \u0627\u0645\u0627 \u0622\u0646\u0647\u0627 \u0628\u0631\u0627\u06cc \u0686\u0647 \u0647\u0633\u062a\u0646\u062f \u0648 \u0686\u06af\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u0646\u062f\u061f  \u0634\u0641\u0627\u0641 \u0633\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u0645 \ud83d\udca1<\/p>\n<p>  GraphQL \u0686\u06cc\u0633\u062a\u061f  \ud83e\uddd0<\/p>\n<p>GraphQL \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0631\u0627\u06cc API \u0647\u0627 \u0648 \u06cc\u06a9 \u0645\u062d\u06cc\u0637 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0622\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0628\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u062c\u0648\u062f \u0634\u0645\u0627 \u0627\u0633\u062a.  \u0641\u06cc\u0633 \u0628\u0648\u06a9 \u0622\u0646 \u0631\u0627 \u062f\u0631 \u0633\u0627\u0644 2015 \u0628\u0631\u0627\u06cc \u0645\u0642\u0627\u0628\u0644\u0647 \u0628\u0627 \u0686\u0627\u0644\u0634 \u0647\u0627\u06cc REST \u0648 \u0627\u0645\u06a9\u0627\u0646 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631 \u062f\u0627\u062f\u0647 \u0647\u0627 \u062a\u0648\u0633\u0639\u0647 \u062f\u0627\u062f.<\/p>\n<p>GraphQL |  \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0631\u0627\u06cc API \u0634\u0645\u0627<\/p>\n<p>  GraphQL \u0686\u06af\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u062f \ud83d\udee0\ufe0f<\/p>\n<p>\u0628\u0627 GraphQL\u060c \u0645\u0634\u062a\u0631\u06cc \u06cc\u06a9 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0647 \u0633\u0631\u0648\u0631 \u0627\u0631\u0633\u0627\u0644 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u062e\u0635 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0686\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0627\u0633\u062a.  \u0633\u0631\u0648\u0631 \u0628\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u0638\u0631 \u062f\u0642\u06cc\u0642\u0627\u064b \u062f\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u06cc \u067e\u0627\u0633\u062e \u0645\u06cc \u062f\u0647\u062f.  \u0627\u06cc\u0646 \u0628\u0631\u062e\u0644\u0627\u0641 REST \u0627\u0633\u062a \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u0633\u0631\u0648\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u067e\u0627\u0633\u062e \u0631\u0627 \u062a\u0639\u06cc\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>query {<br \/>\n  user(id: &#8220;1&#8221;) {<br \/>\n    name<br \/>\n    email<br \/>\n  }<br \/>\n}<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0645\u062b\u0627\u0644 \u0628\u0627\u0644\u0627 \u06cc\u06a9 \u06a9\u0648\u0626\u0631\u06cc \u0633\u0627\u062f\u0647 GraphQL \u0631\u0627 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u0646\u0627\u0645 \u0648 \u0622\u062f\u0631\u0633 \u0627\u06cc\u0645\u06cc\u0644 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0631\u0627 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>  \u0645\u0632\u0627\u06cc\u0627\u06cc GraphQL \ud83c\udf1f<\/p>\n<p>  \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u06a9\u0627\u0631\u0622\u0645\u062f \ud83d\ude80<\/p>\n<p>GraphQL \u0628\u0647 \u0645\u0634\u062a\u0631\u06cc \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u062a\u0627 \u062f\u0642\u06cc\u0642\u0627\u064b \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0631\u0627 \u0645\u0634\u062e\u0635 \u06a9\u0646\u062f.  \u0627\u06cc\u0646 \u0627\u0645\u0631 \u0645\u06cc\u0632\u0627\u0646 \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u0631\u0627 \u06a9\u0627\u0647\u0634 \u0645\u06cc \u062f\u0647\u062f \u0648 \u06a9\u0627\u0631\u0627\u06cc\u06cc \u0631\u0627 \u0628\u0647\u0628\u0648\u062f \u0645\u06cc \u0628\u062e\u0634\u062f\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u062a\u0644\u0641\u0646 \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 \u067e\u0647\u0646\u0627\u06cc \u0628\u0627\u0646\u062f \u0645\u062d\u062f\u0648\u062f.<\/p>\n<p>  \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0633\u0627\u0632\u06af\u0627\u0631\u06cc \ud83e\udd39\u200d\u2640\ufe0f<\/p>\n<p>\u0627\u0632 \u0622\u0646\u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u0634\u062a\u0631\u06cc \u0633\u0627\u062e\u062a\u0627\u0631 \u067e\u0627\u0633\u062e \u0631\u0627 \u062a\u0639\u06cc\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f\u060c API \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0628\u0627 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0648 \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u062f\u0631 \u0633\u0645\u062a \u0633\u0631\u0648\u0631 \u0633\u0627\u0632\u06af\u0627\u0631 \u06a9\u0631\u062f.<\/p>\n<p>  \u062a\u0627\u06cc\u067e \u0642\u0648\u06cc \ud83d\udd20<\/p>\n<p>GraphQL \u0627\u0632 \u0637\u0631\u062d\u06cc \u0628\u0627 \u062a\u0627\u06cc\u067e \u0642\u0648\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0627\u0632 \u0642\u0628\u0644 \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u0634\u0648\u0646\u062f \u0648 \u067e\u06cc\u0627\u0645 \u0647\u0627\u06cc \u062e\u0637\u0627\u06cc \u062f\u0642\u06cc\u0642 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u0646\u062f.  \u0627\u06cc\u0646 \u0627\u0645\u0631 \u0642\u0627\u0628\u0644\u06cc\u062a \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a \u0646\u06af\u0647\u062f\u0627\u0631\u06cc API \u0631\u0627 \u0628\u0647\u0628\u0648\u062f \u0645\u06cc \u0628\u062e\u0634\u062f.<\/p>\n<p>  \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc \u0628\u0627 \u0627\u0634\u062a\u0631\u0627\u06a9 \ud83d\udce1<\/p>\n<p>GraphQL \u0627\u0632 \u0627\u0634\u062a\u0631\u0627\u06a9 \u0647\u0627\u06cc\u06cc \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u0645\u06a9\u0627\u0646 \u062f\u0631\u06cc\u0627\u0641\u062a \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f.  \u0627\u06cc\u0646 \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc\u06cc \u0645\u0641\u06cc\u062f \u0627\u0633\u062a \u06a9\u0647 \u0628\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0628\u0647 \u0631\u0648\u0632 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u0646\u062f\u060c \u0645\u0627\u0646\u0646\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0686\u062a \u06cc\u0627 \u062f\u0627\u0634\u0628\u0648\u0631\u062f.<\/p>\n<p>  \u0645\u0639\u0627\u06cc\u0628 GraphQL \u26a0<\/p>\n<p>  \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u0627\u062c\u0631\u0627\ud83e\udde9<\/p>\n<p>\u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc GraphQL \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u067e\u06cc\u0686\u06cc\u062f\u0647 \u062a\u0631 \u0627\u0632 REST \u0628\u0627\u0634\u062f\u060c \u0628\u0647 \u062e\u0635\u0648\u0635 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646\u06cc \u06a9\u0647 \u0628\u0627 \u0627\u06cc\u0646 \u0641\u0646\u0627\u0648\u0631\u06cc \u0622\u0634\u0646\u0627 \u0646\u06cc\u0633\u062a\u0646\u062f.  \u0627\u06cc\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062f\u0631\u06a9 \u06a9\u0627\u0645\u0644 \u0637\u0631\u062d\u0648\u0627\u0631\u0647 GraphQL \u0648 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u062f\u0627\u0631\u062f.<\/p>\n<p>  \u062e\u0637\u0631\u0627\u062a \u0627\u0645\u0646\u06cc\u062a\u06cc \ud83d\udee1\ufe0f<\/p>\n<p>\u0627\u0632 \u0622\u0646\u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u0634\u062a\u0631\u06cc \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f\u060c \u062e\u0637\u0631 \u0628\u0627\u0644\u0627\u062a\u0631\u06cc \u0627\u0632 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc \u0646\u0627\u06a9\u0627\u0631\u0622\u0645\u062f \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0645\u0646\u062c\u0631 \u0628\u0647 \u0627\u0636\u0627\u0641\u0647 \u0628\u0627\u0631 \u0633\u0631\u0648\u0631 \u0634\u0648\u062f.  \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0647\u0627\u06cc \u0645\u062d\u062f\u0648\u062f \u06a9\u0646\u0646\u062f\u0647 \u0648 \u0646\u0638\u0627\u0631\u062a \u0628\u0631 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0633\u06cc\u0627\u0631 \u0645\u0647\u0645 \u0627\u0633\u062a.<\/p>\n<p>  \u0686\u0627\u0644\u0634 \u0647\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \ud83d\uddc4\ufe0f<\/p>\n<p>\u06a9\u0634 \u06a9\u0631\u062f\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc GraphQL \u0646\u0633\u0628\u062a \u0628\u0647 REST \u0633\u0627\u062f\u0647 \u062a\u0631 \u0627\u0633\u062a\u060c \u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0628\u0647 \u0637\u0648\u0631 \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f \u0634\u0646\u0627\u0633\u0627\u06cc\u06cc \u0648 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0631\u062f.  \u0628\u0631\u0627\u06cc \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u06a9\u0634 \u06a9\u0627\u0631\u0622\u0645\u062f\u060c \u0628\u0647 \u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc \u0647\u0627 \u0648 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u0628\u06cc\u0634\u062a\u0631\u06cc \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u062f.<\/p>\n<p>  \u0645\u0642\u0627\u06cc\u0633\u0647: GraphQL \u062f\u0631 \u0645\u0642\u0627\u0628\u0644 REST \ud83e\udd4a<\/p>\n<p>  \u067e\u0631\u0633 \u0648 \u062c\u0648 \u062f\u0627\u062f\u0647 \u0647\u0627<\/p>\n<p>GraphQL: \u0645\u0634\u062a\u0631\u06cc \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0642\u06cc\u0642\u0627 \u0645\u0634\u062e\u0635 \u06a9\u0646\u062f \u06a9\u0647 \u0686\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0627\u0633\u062a.<\/p>\n<p>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647: \u0633\u0631\u0648\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u067e\u0627\u0633\u062e \u0631\u0627 \u062a\u0639\u06cc\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u063a\u0644\u0628 \u0645\u0646\u062c\u0631 \u0628\u0647 \u0628\u0631\u062f\u0627\u0634\u062a \u0628\u06cc\u0634 \u0627\u0632 \u062d\u062f \u06cc\u0627 \u06a9\u0645 \u0648\u0627\u06a9\u0634\u06cc \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<p>  \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc<\/p>\n<p>GraphQL: \u0628\u0633\u06cc\u0627\u0631 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631 \u0627\u0633\u062a \u0632\u06cc\u0631\u0627 \u0645\u0634\u062a\u0631\u06cc \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<p>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647: \u0627\u0646\u0639\u0637\u0627\u0641 \u06a9\u0645\u062a\u0631\u06cc \u062f\u0627\u0631\u062f \u0632\u06cc\u0631\u0627 \u0646\u0642\u0627\u0637 \u067e\u0627\u06cc\u0627\u0646\u06cc API \u0648 \u067e\u0627\u0633\u062e \u0647\u0627\u06cc \u0622\u0646\u0647\u0627 \u062b\u0627\u0628\u062a \u0647\u0633\u062a\u0646\u062f.<\/p>\n<p>  \u06a9\u0627\u0631\u0627\u06cc\u06cc<\/p>\n<p>GraphQL: \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631 \u0627\u0633\u062a \u0632\u06cc\u0631\u0627 \u0641\u0642\u0637 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0645\u0646\u062a\u0642\u0644 \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<p>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647: \u062f\u0631 \u0635\u0648\u0631\u062a \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0628\u06cc\u0634\u062a\u0631 \u0627\u0632 \u0646\u06cc\u0627\u0632\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0646\u0627\u06a9\u0627\u0631\u0622\u0645\u062f \u0628\u0627\u0634\u062f.<\/p>\n<p>  \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc<\/p>\n<p>GraphQL: \u062a\u0648\u0633\u0637 \u0627\u0634\u062a\u0631\u0627\u06a9 \u0647\u0627 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc \u0634\u0648\u062f.<\/p>\n<p>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647: \u0628\u0627\u06cc\u062f \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0647\u0627\u06cc \u0627\u0636\u0627\u0641\u06cc \u0645\u0627\u0646\u0646\u062f WebSockets \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0634\u0648\u062f.<\/p>\n<p>  \u0645\u062b\u0627\u0644 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0628\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \ud83d\udcdc<\/p>\n<p>\u062d\u0627\u0644 \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0628\u0647 \u0686\u0646\u062f \u0645\u062b\u0627\u0644 \u0639\u0645\u0644\u06cc \u0628\u0631\u0627\u06cc \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u0646 \u062a\u0641\u0627\u0648\u062a \u0628\u06cc\u0646 REST \u0648 GraphQL \u0646\u06af\u0627\u0647 \u06a9\u0646\u06cc\u0645.<\/p>\n<p>  \u0645\u062b\u0627\u0644 1: \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631<\/p>\n<p>  \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/p>\n<p>\u0628\u0627 \u06cc\u06a9 API RESTful\u060c \u0634\u0645\u0627 \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0686\u0646\u062f\u06cc\u0646 \u0646\u0642\u0637\u0647 \u067e\u0627\u06cc\u0627\u0646\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u062f\u0631\u06cc\u0627\u0641\u062a \u062a\u0645\u0627\u0645 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u062e\u0648\u062f \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f.<\/p>\n<p>\/\/ Benutzerinformationen abrufen<br \/>\nfetch(&#8216;https:\/\/api.example.com\/users\/1&#8217;)<br \/>\n  .then(response =&gt; response.json())<br \/>\n  .then(user =&gt; {<br \/>\n    console.log(user.name);<br \/>\n    console.log(user.email);<br \/>\n    \/\/ Weitere Details abrufen<br \/>\n    fetch(`https:\/\/api.example.com\/users\/1\/posts`)<br \/>\n      .then(response =&gt; response.json())<br \/>\n      .then(posts =&gt; console.log(posts));<br \/>\n  });<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u06a9\u0627\u0631\u0628\u0631 \u0627\u0628\u062a\u062f\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0645\u06cc \u0634\u0648\u062f \u0648 \u0633\u067e\u0633 \u062f\u0631 \u06cc\u06a9 \u062a\u0645\u0627\u0633 \u062f\u0648\u0645 \u0628\u0627 \u067e\u0633\u062a \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u062a\u0645\u0627\u0633 \u0645\u06cc \u06af\u06cc\u0631\u062f.  \u0627\u06cc\u0646 \u0645\u0646\u062c\u0631 \u0628\u0647 \u062a\u0645\u0627\u0633\u200c\u0647\u0627\u06cc \u0634\u0628\u06a9\u0647\u200c\u0627\u06cc \u0645\u062a\u0639\u062f\u062f \u0648 \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u0646\u0627\u06a9\u0627\u0631\u0622\u0645\u062f \u0645\u06cc\u200c\u0634\u0648\u062f.<\/p>\n<p>  GraphQL<\/p>\n<p>\u0628\u0627 GraphQL\u060c \u062a\u0645\u0627\u0645 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u062f\u0631 \u06cc\u06a9 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0631\u062f.<\/p>\n<p>const query = `<br \/>\n  query {<br \/>\n    user(id: &#8220;1&#8221;) {<br \/>\n      name<br \/>\n      email<br \/>\n      posts {<br \/>\n        title<br \/>\n        content<br \/>\n      }<br \/>\n    }<br \/>\n  }<br \/>\n`;<\/p>\n<p>fetch(&#8216;https:\/\/api.example.com\/graphql&#8217;, {<br \/>\n  method: &#8216;POST&#8217;,<br \/>\n  headers: {<br \/>\n    &#8216;Content-Type&#8217;: &#8216;application\/json&#8217;<br \/>\n  },<br \/>\n  body: JSON.stringify({ query })<br \/>\n})<br \/>\n  .then(response =&gt; response.json())<br \/>\n  .then(data =&gt; {<br \/>\n    const user = data.data.user;<br \/>\n    console.log(user.name);<br \/>\n    console.log(user.email);<br \/>\n    console.log(user.posts);<br \/>\n  });<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0627\u06cc\u0646 \u0645\u062b\u0627\u0644 \u0627\u0632 \u06cc\u06a9 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f \u062a\u0627 \u0647\u0645 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u0648 \u0647\u0645 \u067e\u0633\u062a \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0646\u062f \u0648 \u062f\u0631 \u0646\u062a\u06cc\u062c\u0647 \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631 \u0627\u0633\u062a.<\/p>\n<p>  \u0645\u062b\u0627\u0644 2: \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u06a9\u0646\u06cc\u062f<\/p>\n<p>  \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/p>\n<p>\u0628\u0627 RESTful API\u060c \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc \u06a9\u0627\u0631\u0628\u0631 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u062a\u0645\u0627\u0633 PUT \u06cc\u0627 PATCH \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc\u200c\u0634\u0648\u062f.<\/p>\n<p>fetch(&#8216;https:\/\/api.example.com\/users\/1&#8217;, {<br \/>\n  method: &#8216;PUT&#8217;,<br \/>\n  headers: {<br \/>\n    &#8216;Content-Type&#8217;: &#8216;application\/json&#8217;<br \/>\n  },<br \/>\n  body: JSON.stringify({<br \/>\n    name: &#8216;Neuer Name&#8217;,<br \/>\n    email: &#8216;neueemail@example.com&#8217;<br \/>\n  })<br \/>\n})<br \/>\n  .then(response =&gt; response.json())<br \/>\n  .then(user =&gt; console.log(user));<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  GraphQL<\/p>\n<p>\u062f\u0631 GraphQL \u0627\u06cc\u0646 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u06cc\u06a9 \u062c\u0647\u0634 \u0628\u0647 \u062f\u0633\u062a \u0645\u06cc \u0622\u06cc\u062f.<\/p>\n<p>const mutation = `<br \/>\n  mutation {<br \/>\n    updateUser(id: &#8220;1&#8221;, input: {<br \/>\n      name: &#8220;Neuer Name&#8221;,<br \/>\n      email: &#8220;neueemail@example.com&#8221;<br \/>\n    }) {<br \/>\n      name<br \/>\n      email<br \/>\n    }<br \/>\n  }<br \/>\n`;<\/p>\n<p>fetch(&#8216;https:\/\/api.example.com\/graphql&#8217;, {<br \/>\n  method: &#8216;POST&#8217;,<br \/>\n  headers: {<br \/>\n    &#8216;Content-Type&#8217;: &#8216;application\/json&#8217;<br \/>\n  },<br \/>\n  body: JSON.stringify({ query: mutation })<br \/>\n})<br \/>\n  .then(response =&gt; response.json())<br \/>\n  .then(data =&gt; {<br \/>\n    const user = data.data.updateUser;<br \/>\n    console.log(user.name);<br \/>\n    console.log(user.email);<br \/>\n  });<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0645\u062b\u0627\u0644 \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062c\u0647\u0634 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u062d\u06cc\u0646 \u0628\u0627\u0632\u06af\u0631\u062f\u0627\u0646\u062f\u0646 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u06cc\u0627\u0641\u062a\u0647 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f.<\/p>\n<p>  \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0633\u0631\u0648\u0631 GraphQL \u0628\u0627 Node.js \ud83c\udf10<\/p>\n<p>\u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0633\u0631\u0648\u0631 GraphQL \u0628\u0627 Node.js \u0628\u0647 \u0627\u0628\u0632\u0627\u0631\u0647\u0627 \u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0647\u0627\u06cc \u0632\u06cc\u0631 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u0645:<\/p>\n<p>Node.js \u2013 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0631\u0627 \u062f\u0631 \u0647\u0645\u0647 \u062c\u0627 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062fNode.js\u00ae \u06cc\u06a9 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0627\u0633\u062a \u06a9\u0647 \u0628\u0631 \u0631\u0648\u06cc \u0645\u0648\u062a\u0648\u0631 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a V8 \u06a9\u0631\u0648\u0645 \u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<p>Express &#8211; \u0686\u0627\u0631\u0686\u0648\u0628 Node.js \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0648\u0628<\/p>\n<p>\u0622\u067e\u0648\u0644\u0648 \u0633\u0631\u0648\u0631 (\u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0633\u0631\u0648\u0631 GraphQL)<\/p>\n<p>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0633\u0631\u0648\u0631 \u0622\u067e\u0648\u0644\u0648<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u067e\u0631\u0648\u0698\u0647 \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u06cc\u06a9 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u0648 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 Node.js \u0631\u0627 \u0645\u0642\u062f\u0627\u0631\u062f\u0647\u06cc \u0627\u0648\u0644\u06cc\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>mkdir graphql-server<br \/>\ncd graphql-server<br \/>\nnpm init -y<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>npm install express apollo-server-express graphql<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 2: \u0637\u0631\u062d\u0648\u0627\u0631\u0647 \u0648 \u062d\u0644 \u06a9\u0646\u0646\u062f\u0647 GraphQL \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f schema.js \u0648 \u0637\u0631\u062d\u0648\u0627\u0631\u0647 \u0648 \u062d\u0644 \u06a9\u0646\u0646\u062f\u0647 \u0647\u0627\u06cc GraphQL \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f:<\/p>\n<p>const { gql } = require(&#8216;apollo-server-express&#8217;);<\/p>\n<p>\/\/ Definiere das GraphQL-Schema<br \/>\nconst typeDefs = gql`<br \/>\n  type User {<br \/>\n    id: ID!<br \/>\n    name: String!<br \/>\n    email: String!<br \/>\n  }<\/p>\n<p>  type Query {<br \/>\n    user(id: ID!): User<br \/>\n  }<\/p>\n<p>  type Mutation {<br \/>\n    updateUser(id: ID!, name: String!, email: String!): User<br \/>\n  }<br \/>\n`;<\/p>\n<p>\/\/ Beispiel-Daten<br \/>\nconst users = [<br \/>\n  { id: &#8216;1&#8217;, name: &#8216;Max Mustermann&#8217;, email: &#8216;max@example.com&#8217; },<br \/>\n];<\/p>\n<p>\/\/ Definiere die Resolver<br \/>\nconst resolvers = {<br \/>\n  Query: {<br \/>\n    user: (parent, args) =&gt; users.find(user =&gt; user.id === args.id),<br \/>\n  },<br \/>\n  Mutation: {<br \/>\n    updateUser: (parent, args) =&gt; {<br \/>\n      const user = users.find(user =&gt; user.id === args.id);<br \/>\n      if (user) {<br \/>\n        user.name = args.name;<br \/>\n        user.email = args.email;<br \/>\n      }<br \/>\n      return user;<br \/>\n    },<br \/>\n  },<br \/>\n};<\/p>\n<p>module.exports = { typeDefs, resolvers };<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u0633\u0631\u0648\u0631 GraphQL \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f index.js \u0648 \u0633\u0631\u0648\u0631 GraphQL \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<p>const express = require(&#8216;express&#8217;);<br \/>\nconst { ApolloServer } = require(&#8216;apollo-server-express&#8217;);<br \/>\nconst { typeDefs, resolvers } = require(&#8216;.\/schema&#8217;);<\/p>\n<p>const app = express();<br \/>\nconst server = new ApolloServer({ typeDefs, resolvers });<\/p>\n<p>server.applyMiddleware({ app });<\/p>\n<p>app.listen({ port: 4000 }, () =&gt;<br \/>\n  console.log(`\ud83d\ude80 Server ready at http:\/\/localhost:4000${server.graphqlPath}`)<br \/>\n);<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u0633\u0631\u0648\u0631 \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/p>\n<p>\u0633\u0631\u0648\u0631 \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<p>node index.js<\/p>\n<p>    \u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/p>\n<p>    \u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/p>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u0633\u0631\u0648\u0631 GraphQL \u0634\u0645\u0627 \u0627\u0632 \u06a9\u0627\u0631 \u0627\u0641\u062a\u0627\u062f\u0647 \u0627\u0633\u062a http:\/\/localhost:4000\/graphql.  \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0627 \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 URL \u062f\u0631 \u0645\u0631\u0648\u0631\u06af\u0631 \u062e\u0648\u062f \u0648 \u0627\u062c\u0631\u0627\u06cc \u067e\u0631\u0633 \u0648 \u062c\u0648 \u062f\u0631 Apollo Playground \u0633\u0631\u0648\u0631 \u0631\u0627 \u0622\u0632\u0645\u0627\u06cc\u0634 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>  \u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc \ud83d\udccb<\/p>\n<p>GraphQL \u0645\u0632\u0627\u06cc\u0627\u06cc \u0632\u06cc\u0627\u062f\u06cc \u0646\u0633\u0628\u062a \u0628\u0647 API \u0647\u0627\u06cc RESTful \u062f\u0627\u0631\u062f\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0627\u0632 \u0646\u0638\u0631 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u06a9\u0627\u0631\u0627\u06cc\u06cc.  \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644\u060c \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u0648 \u0686\u0627\u0644\u0634 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc \u0628\u06cc\u0634\u062a\u0631\u06cc \u0631\u0627 \u0646\u06cc\u0632 \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u062f\u0627\u0631\u062f.  \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0622\u0645\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0645\u0642\u0627\u0628\u0644\u0647 \u0628\u0627 \u0627\u06cc\u0646 \u0686\u0627\u0644\u0634 \u0647\u0627\u060c GraphQL \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u06cc\u06a9 \u0641\u0646\u0627\u0648\u0631\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u067e\u06cc\u0634\u06af\u0627\u0645 \u0628\u0627\u0634\u062f.<\/p>\n<p>\u0627\u06af\u0631 \u0633\u0624\u0627\u0644 \u06cc\u0627 \u0646\u0638\u0631\u06cc \u062f\u0631 \u0645\u0648\u0631\u062f GraphQL \u062f\u0627\u0631\u06cc\u062f\u060c \u0644\u0637\u0641\u0627\u064b \u0646\u0638\u0631 \u062e\u0648\u062f \u0631\u0627 \u0628\u0646\u0648\u06cc\u0633\u06cc\u062f \u06cc\u0627 \u0641\u0642\u0637 \u0628\u0647 \u0627\u0646\u062c\u0645\u0646 \u0645\u0631\u0627\u062c\u0639\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<p>\u0627\u06af\u0631 \u067e\u0633\u062a\u200c\u0647\u0627\u06cc \u0645\u0646 \u0631\u0627 \u062f\u0648\u0633\u062a \u062f\u0627\u0631\u06cc\u062f\u060c \u062e\u0648\u0628 \u0627\u0633\u062a \u0627\u06af\u0631 \u0648\u0628\u0644\u0627\u06af \u0645\u0646 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u0637\u0627\u0644\u0628 \u0641\u0646\u06cc \u0628\u06cc\u0634\u062a\u0631 \u062f\u0646\u0628\u0627\u0644 \u06a9\u0646\u06cc\u062f.<\/p>\n<div data-article-id=\"1946697\" id=\"article-body\">\n<p>GraphQL \u062f\u0631 \u0645\u0642\u0627\u0628\u0644 REST: \u0645\u0632\u0627\u06cc\u0627 \u0648 \u0645\u0639\u0627\u06cc\u0628 \u0632\u0628\u0627\u0646 \u06a9\u0648\u0626\u0631\u06cc \u0645\u062f\u0631\u0646 \u0631\u0627 \u0628\u0631\u0627\u06cc API\u0647\u0627 \u06a9\u0634\u0641 \u06a9\u0646\u06cc\u062f!  \ud83c\udf10<\/p>\n<hr\/>\n<p>\u062a\u0635\u0648\u0631 \u06a9\u0646\u06cc\u062f \u0628\u062a\u0648\u0627\u0646\u06cc\u062f \u06cc\u06a9 API \u0631\u0627 \u0633\u0641\u0627\u0631\u0634\u06cc \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062f\u0642\u06cc\u0642\u0627\u064b \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632\u062a\u0627\u0646 \u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u062f\u060c \u0646\u0647 \u0628\u06cc\u0634\u062a\u0631 \u0648 \u0646\u0647 \u06a9\u0645\u062a\u0631.  \u0627\u06cc\u0646 \u0648\u0639\u062f\u0647 GraphQL \u0627\u0633\u062a.  \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 API \u0647\u0627\u06cc RESTful \u0633\u0627\u0644 \u0647\u0627 \u0627\u0633\u062a\u0627\u0646\u062f\u0627\u0631\u062f \u0628\u0648\u062f\u0647 \u0627\u0646\u062f\u060c GraphQL \u062c\u0627\u06cc\u06af\u0632\u06cc\u0646 \u0645\u062f\u0631\u0646 \u0648 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u062a\u0631\u06cc \u0627\u0631\u0627\u0626\u0647 \u0645\u06cc \u062f\u0647\u062f.  \u062f\u0631 \u0627\u06cc\u0646 \u0645\u0642\u0627\u0644\u0647 \u0646\u06af\u0627\u0647\u06cc \u062f\u0642\u06cc\u0642 \u0628\u0647 GraphQL \u0645\u06cc \u0627\u0646\u062f\u0627\u0632\u06cc\u0645 \u0648 \u0645\u0632\u0627\u06cc\u0627 \u0648 \u0645\u0639\u0627\u06cc\u0628 \u0622\u0646 \u0631\u0627 \u0628\u0627 API \u0647\u0627\u06cc RESTful \u0645\u0642\u0627\u06cc\u0633\u0647 \u0645\u06cc \u06a9\u0646\u06cc\u0645.  \u0645\u0646 \u0642\u0628\u0644\u0627\u064b \u062f\u0631 \u0645\u0642\u0627\u0644\u0647 \u0642\u0628\u0644\u06cc \u062a\u0648\u0636\u06cc\u062d \u062f\u0627\u062f\u0647 \u0627\u0645 \u06a9\u0647 \u062f\u0642\u06cc\u0642\u0627\u064b REST API \u0647\u0627 \u0686\u06cc\u0633\u062a<\/p>\n<p>API \u0647\u0627\u06cc REST \u0631\u0627 \u062f\u0631\u06a9 \u06a9\u0631\u062f\u0647 \u0648 \u0627\u0632 \u0622\u0646\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u06a9\u0646\u06cc\u062f<img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--jMf9fjfg--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/blog.disane.dev\/content\/images\/2023\/12\/rest_api-standard-erklart_banner.jpeg\" alt=\"\u067e\u06cc\u0634 \u0646\u0645\u0627\u06cc\u0634 \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"450\" title=\"\">API \u0647\u0627: \u0647\u0645\u0647 \u062c\u0627 \u062d\u0627\u0636\u0631 \u0647\u0633\u062a\u0646\u062f \u0648 \u0647\u0645\u0647 \u0627\u0632 \u0622\u0646\u0647\u0627 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u0646\u062f\u060c \u0627\u0644\u0628\u062a\u0647 \u0628\u0647 \u0637\u0648\u0631 \u0645\u0633\u062a\u0642\u06cc\u0645.  \u0627\u0645\u0627 \u0622\u0646\u0647\u0627 \u0628\u0631\u0627\u06cc \u0686\u0647 \u0647\u0633\u062a\u0646\u062f \u0648 \u0686\u06af\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u0646\u062f\u061f  \u0634\u0641\u0627\u0641 \u0633\u0627\u0632\u06cc \u0645\u06cc \u06a9\u0646\u06cc\u0645 \ud83d\udca1<\/p>\n<div id=\"ez-toc-container\" class=\"ez-toc-v2_0_85 counter-hierarchy ez-toc-counter-rtl ez-toc-grey ez-toc-container-direction\">\n<div class=\"ez-toc-title-container\">\n<p class=\"ez-toc-title\" style=\"cursor:inherit\">\u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628<\/p>\n<span class=\"ez-toc-title-toggle\"><a href=\"#\" class=\"ez-toc-pull-right ez-toc-btn ez-toc-btn-xs ez-toc-btn-default ez-toc-toggle\" aria-label=\"\u062a\u063a\u06cc\u06cc\u0631 \u0648\u0636\u0639\u06cc\u062a \u0641\u0647\u0631\u0633\u062a \u0645\u0637\u0627\u0644\u0628\"><span class=\"ez-toc-js-icon-con\"><span class=\"\"><span class=\"eztoc-hide\" style=\"display:none;\">Toggle<\/span><span class=\"ez-toc-icon-toggle-span\"><svg style=\"fill: #999;color:#999\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" class=\"list-377408\" width=\"20px\" height=\"20px\" viewBox=\"0 0 24 24\" fill=\"none\"><path d=\"M6 6H4v2h2V6zm14 0H8v2h12V6zM4 11h2v2H4v-2zm16 0H8v2h12v-2zM4 16h2v2H4v-2zm16 0H8v2h12v-2z\" fill=\"currentColor\"><\/path><\/svg><svg style=\"fill: #999;color:#999\" class=\"arrow-unsorted-368013\" xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"10px\" height=\"10px\" viewBox=\"0 0 24 24\" version=\"1.2\" baseProfile=\"tiny\"><path d=\"M18.2 9.3l-6.2-6.3-6.2 6.3c-.2.2-.3.4-.3.7s.1.5.3.7c.2.2.4.3.7.3h11c.3 0 .5-.1.7-.3.2-.2.3-.5.3-.7s-.1-.5-.3-.7zM5.8 14.7l6.2 6.3 6.2-6.3c.2-.2.3-.5.3-.7s-.1-.5-.3-.7c-.2-.2-.4-.3-.7-.3h-11c-.3 0-.5.1-.7.3-.2.2-.3.5-.3.7s.1.5.3.7z\"\/><\/svg><\/span><\/span><\/span><\/a><\/span><\/div>\n<nav><ul class='ez-toc-list ez-toc-list-level-1 ' ><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-1\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#GraphQL_%DA%86%DB%8C%D8%B3%D8%AA%D8%9F_%F0%9F%A7%90\" >GraphQL \u0686\u06cc\u0633\u062a\u061f  \ud83e\uddd0<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-2\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#GraphQL_%DA%86%DA%AF%D9%88%D9%86%D9%87_%DA%A9%D8%A7%D8%B1_%D9%85%DB%8C_%DA%A9%D9%86%D8%AF_%F0%9F%9B%A0%EF%B8%8F\" >GraphQL \u0686\u06af\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u062f \ud83d\udee0\ufe0f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-3\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%B2%D8%A7%DB%8C%D8%A7%DB%8C_GraphQL_%F0%9F%8C%9F\" >\u0645\u0632\u0627\u06cc\u0627\u06cc GraphQL \ud83c\udf1f<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-4\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%BE%D8%B1%D8%B3_%D9%88_%D8%AC%D9%88%D9%87%D8%A7%DB%8C_%D8%AF%D8%A7%D8%AF%D9%87_%DA%A9%D8%A7%D8%B1%D8%A2%D9%85%D8%AF_%F0%9F%9A%80\" >\u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u06a9\u0627\u0631\u0622\u0645\u062f \ud83d\ude80<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-5\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%A7%D9%86%D8%B9%D8%B7%D8%A7%D9%81_%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C_%D9%88_%D8%B3%D8%A7%D8%B2%DA%AF%D8%A7%D8%B1%DB%8C_%F0%9F%A4%B9%E2%80%8D%E2%99%80%EF%B8%8F\" >\u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0633\u0627\u0632\u06af\u0627\u0631\u06cc \ud83e\udd39\u200d\u2640\ufe0f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-6\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%AA%D8%A7%DB%8C%D9%BE_%D9%82%D9%88%DB%8C_%F0%9F%94%A0\" >\u062a\u0627\u06cc\u067e \u0642\u0648\u06cc \ud83d\udd20<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-7\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%A8%D9%87_%D8%B1%D9%88%D8%B2_%D8%B1%D8%B3%D8%A7%D9%86%DB%8C_%D8%AF%D8%B1_%D8%B2%D9%85%D8%A7%D9%86_%D9%88%D8%A7%D9%82%D8%B9%DB%8C_%D8%A8%D8%A7_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%F0%9F%93%A1\" >\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc \u0628\u0627 \u0627\u0634\u062a\u0631\u0627\u06a9 \ud83d\udce1<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-8\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%B9%D8%A7%DB%8C%D8%A8_GraphQL_%E2%9A%A0\" >\u0645\u0639\u0627\u06cc\u0628 GraphQL \u26a0<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-9\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%BE%DB%8C%DA%86%DB%8C%D8%AF%DA%AF%DB%8C_%D8%A7%D8%AC%D8%B1%D8%A7%F0%9F%A7%A9\" >\u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u0627\u062c\u0631\u0627\ud83e\udde9<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-10\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%AE%D8%B7%D8%B1%D8%A7%D8%AA_%D8%A7%D9%85%D9%86%DB%8C%D8%AA%DB%8C_%F0%9F%9B%A1%EF%B8%8F\" >\u062e\u0637\u0631\u0627\u062a \u0627\u0645\u0646\u06cc\u062a\u06cc \ud83d\udee1\ufe0f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-11\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%DA%86%D8%A7%D9%84%D8%B4_%D9%87%D8%A7%DB%8C_%D8%B0%D8%AE%DB%8C%D8%B1%D9%87_%D8%B3%D8%A7%D8%B2%DB%8C_%F0%9F%97%84%EF%B8%8F\" >\u0686\u0627\u0644\u0634 \u0647\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \ud83d\uddc4\ufe0f<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-12\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87_GraphQL_%D8%AF%D8%B1_%D9%85%D9%82%D8%A7%D8%A8%D9%84_REST_%F0%9F%A5%8A\" >\u0645\u0642\u0627\u06cc\u0633\u0647: GraphQL \u062f\u0631 \u0645\u0642\u0627\u0628\u0644 REST \ud83e\udd4a<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-13\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%BE%D8%B1%D8%B3_%D9%88_%D8%AC%D9%88_%D8%AF%D8%A7%D8%AF%D9%87_%D9%87%D8%A7\" >\u067e\u0631\u0633 \u0648 \u062c\u0648 \u062f\u0627\u062f\u0647 \u0647\u0627<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-14\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%A7%D9%86%D8%B9%D8%B7%D8%A7%D9%81_%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C\" >\u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-15\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%DA%A9%D8%A7%D8%B1%D8%A7%DB%8C%DB%8C\" >\u06a9\u0627\u0631\u0627\u06cc\u06cc<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-16\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%A8%D9%87_%D8%B1%D9%88%D8%B2_%D8%B1%D8%B3%D8%A7%D9%86%DB%8C_%D8%AF%D8%B1_%D8%B2%D9%85%D8%A7%D9%86_%D9%88%D8%A7%D9%82%D8%B9%DB%8C\" >\u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-17\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%AB%D8%A7%D9%84_%D9%87%D8%A7%DB%8C_%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%AF%DB%8C_%D8%A8%D8%A7_%D8%AC%D8%A7%D9%88%D8%A7_%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA_%F0%9F%93%9C\" >\u0645\u062b\u0627\u0644 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0628\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \ud83d\udcdc<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-18\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%AB%D8%A7%D9%84_1_%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C_%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA_%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1\" >\u0645\u062b\u0627\u0644 1: \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-19\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%A8%D8%A7%D9%82%DB%8C_%D9%85%D8%A7%D9%86%D8%AF%D9%87\" >\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-20\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#GraphQL\" >GraphQL<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-21\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%AB%D8%A7%D9%84_2_%DB%8C%DA%A9_%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1_%D8%B1%D8%A7_%D8%A8%D9%87_%D8%B1%D9%88%D8%B2_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u062b\u0627\u0644 2: \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u06a9\u0646\u06cc\u062f<\/a><ul class='ez-toc-list-level-4' ><li class='ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-22\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%A8%D8%A7%D9%82%DB%8C_%D9%85%D8%A7%D9%86%D8%AF%D9%87-2\" >\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-4'><a class=\"ez-toc-link ez-toc-heading-23\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#GraphQL-2\" >GraphQL<\/a><\/li><\/ul><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-24\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%D8%B3%D8%B1%D9%88%D8%B1_GraphQL_%D8%A8%D8%A7_Nodejs_%F0%9F%8C%90\" >\u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0633\u0631\u0648\u0631 GraphQL \u0628\u0627 Node.js \ud83c\udf10<\/a><ul class='ez-toc-list-level-3' ><li class='ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-25\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D9%BE%D8%B1%D9%88%DA%98%D9%87_%D8%B1%D8%A7_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 1: \u067e\u0631\u0648\u0698\u0647 \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-26\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D8%B7%D8%B1%D8%AD%D9%88%D8%A7%D8%B1%D9%87_%D9%88_%D8%AD%D9%84_%DA%A9%D9%86%D9%86%D8%AF%D9%87_GraphQL_%D8%B1%D8%A7_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 2: \u0637\u0631\u062d\u0648\u0627\u0631\u0647 \u0648 \u062d\u0644 \u06a9\u0646\u0646\u062f\u0647 GraphQL \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-27\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%D8%B3%D8%B1%D9%88%D8%B1_GraphQL_%D8%B1%D8%A7_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 3: \u0633\u0631\u0648\u0631 GraphQL \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/a><\/li><li class='ez-toc-page-1 ez-toc-heading-level-3'><a class=\"ez-toc-link ez-toc-heading-28\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%B3%D8%B1%D9%88%D8%B1_%D8%B1%D8%A7_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\" >\u0645\u0631\u062d\u0644\u0647 4: \u0633\u0631\u0648\u0631 \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<\/a><\/li><\/ul><\/li><li class='ez-toc-page-1 ez-toc-heading-level-2'><a class=\"ez-toc-link ez-toc-heading-29\" href=\"https:\/\/nabfollower.com\/blog\/graphql-zukunft-der-apis-1jge\/#%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C_%F0%9F%93%8B\" >\u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc \ud83d\udccb<\/a><\/li><\/ul><\/nav><\/div>\n<h2><span class=\"ez-toc-section\" id=\"GraphQL_%DA%86%DB%8C%D8%B3%D8%AA%D8%9F_%F0%9F%A7%90\"><\/span>\n<p>  GraphQL \u0686\u06cc\u0633\u062a\u061f  \ud83e\uddd0<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>GraphQL \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0631\u0627\u06cc API \u0647\u0627 \u0648 \u06cc\u06a9 \u0645\u062d\u06cc\u0637 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u0628\u0631\u0627\u06cc \u0627\u0646\u062c\u0627\u0645 \u0622\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0628\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u062c\u0648\u062f \u0634\u0645\u0627 \u0627\u0633\u062a.  \u0641\u06cc\u0633 \u0628\u0648\u06a9 \u0622\u0646 \u0631\u0627 \u062f\u0631 \u0633\u0627\u0644 2015 \u0628\u0631\u0627\u06cc \u0645\u0642\u0627\u0628\u0644\u0647 \u0628\u0627 \u0686\u0627\u0644\u0634 \u0647\u0627\u06cc REST \u0648 \u0627\u0645\u06a9\u0627\u0646 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631 \u062f\u0627\u062f\u0647 \u0647\u0627 \u062a\u0648\u0633\u0639\u0647 \u062f\u0627\u062f.<\/p>\n<p>GraphQL |  \u06cc\u06a9 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0631\u0627\u06cc API \u0634\u0645\u0627<img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--Bzjgd_hx--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/graphql.org\/img\/og-image.png\" alt=\"\u067e\u06cc\u0634 \u0646\u0645\u0627\u06cc\u0634 \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"343\" title=\"\"><\/p>\n<h2><span class=\"ez-toc-section\" id=\"GraphQL_%DA%86%DA%AF%D9%88%D9%86%D9%87_%DA%A9%D8%A7%D8%B1_%D9%85%DB%8C_%DA%A9%D9%86%D8%AF_%F0%9F%9B%A0%EF%B8%8F\"><\/span>\n<p>  GraphQL \u0686\u06af\u0648\u0646\u0647 \u06a9\u0627\u0631 \u0645\u06cc \u06a9\u0646\u062f \ud83d\udee0\ufe0f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0628\u0627 GraphQL\u060c \u0645\u0634\u062a\u0631\u06cc \u06cc\u06a9 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0647 \u0633\u0631\u0648\u0631 \u0627\u0631\u0633\u0627\u0644 \u0645\u06cc \u06a9\u0646\u062f \u0648 \u062f\u0642\u06cc\u0642\u0627\u064b \u0645\u0634\u062e\u0635 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0686\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0627\u0633\u062a.  \u0633\u0631\u0648\u0631 \u0628\u0627 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u0638\u0631 \u062f\u0642\u06cc\u0642\u0627\u064b \u062f\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u062f\u0631\u062e\u0648\u0627\u0633\u062a\u06cc \u067e\u0627\u0633\u062e \u0645\u06cc \u062f\u0647\u062f.  \u0627\u06cc\u0646 \u0628\u0631\u062e\u0644\u0627\u0641 REST \u0627\u0633\u062a \u06a9\u0647 \u062f\u0631 \u0622\u0646 \u0633\u0631\u0648\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u067e\u0627\u0633\u062e \u0631\u0627 \u062a\u0639\u06cc\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight graphql\"><code><span class=\"k\">query<\/span><span class=\"w\"> <\/span><span class=\"p\">{<\/span><span class=\"w\">\n  <\/span><span class=\"n\">user<\/span><span class=\"p\">(<\/span><span class=\"n\">id<\/span><span class=\"p\">:<\/span><span class=\"w\"> <\/span><span class=\"s2\">\"1\"<\/span><span class=\"p\">)<\/span><span class=\"w\"> <\/span><span class=\"p\">{<\/span><span class=\"w\">\n    <\/span><span class=\"n\">name<\/span><span class=\"w\">\n    <\/span><span class=\"n\">email<\/span><span class=\"w\">\n  <\/span><span class=\"p\">}<\/span><span class=\"w\">\n<\/span><span class=\"p\">}<\/span><span class=\"w\">\n\n<\/span><\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0645\u062b\u0627\u0644 \u0628\u0627\u0644\u0627 \u06cc\u06a9 \u06a9\u0648\u0626\u0631\u06cc \u0633\u0627\u062f\u0647 GraphQL \u0631\u0627 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f \u06a9\u0647 \u0646\u0627\u0645 \u0648 \u0622\u062f\u0631\u0633 \u0627\u06cc\u0645\u06cc\u0644 \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0628\u0627 \u0634\u0646\u0627\u0633\u0647 1 \u0631\u0627 \u062f\u0631\u062e\u0648\u0627\u0633\u062a \u0645\u06cc \u06a9\u0646\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B2%D8%A7%DB%8C%D8%A7%DB%8C_GraphQL_%F0%9F%8C%9F\"><\/span>\n<p>  \u0645\u0632\u0627\u06cc\u0627\u06cc GraphQL \ud83c\udf1f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"%D9%BE%D8%B1%D8%B3_%D9%88_%D8%AC%D9%88%D9%87%D8%A7%DB%8C_%D8%AF%D8%A7%D8%AF%D9%87_%DA%A9%D8%A7%D8%B1%D8%A2%D9%85%D8%AF_%F0%9F%9A%80\"><\/span>\n<p>  \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc \u062f\u0627\u062f\u0647 \u06a9\u0627\u0631\u0622\u0645\u062f \ud83d\ude80<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>GraphQL \u0628\u0647 \u0645\u0634\u062a\u0631\u06cc \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u062a\u0627 \u062f\u0642\u06cc\u0642\u0627\u064b \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0631\u0627 \u0645\u0634\u062e\u0635 \u06a9\u0646\u062f.  \u0627\u06cc\u0646 \u0627\u0645\u0631 \u0645\u06cc\u0632\u0627\u0646 \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u0631\u0627 \u06a9\u0627\u0647\u0634 \u0645\u06cc \u062f\u0647\u062f \u0648 \u06a9\u0627\u0631\u0627\u06cc\u06cc \u0631\u0627 \u0628\u0647\u0628\u0648\u062f \u0645\u06cc \u0628\u062e\u0634\u062f\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u062a\u0644\u0641\u0646 \u0647\u0645\u0631\u0627\u0647 \u0628\u0627 \u067e\u0647\u0646\u0627\u06cc \u0628\u0627\u0646\u062f \u0645\u062d\u062f\u0648\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A7%D9%86%D8%B9%D8%B7%D8%A7%D9%81_%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C_%D9%88_%D8%B3%D8%A7%D8%B2%DA%AF%D8%A7%D8%B1%DB%8C_%F0%9F%A4%B9%E2%80%8D%E2%99%80%EF%B8%8F\"><\/span>\n<p>  \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u0633\u0627\u0632\u06af\u0627\u0631\u06cc \ud83e\udd39\u200d\u2640\ufe0f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0627\u0632 \u0622\u0646\u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u0634\u062a\u0631\u06cc \u0633\u0627\u062e\u062a\u0627\u0631 \u067e\u0627\u0633\u062e \u0631\u0627 \u062a\u0639\u06cc\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f\u060c API \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0628\u0647 \u0631\u0627\u062d\u062a\u06cc \u0628\u0627 \u0646\u06cc\u0627\u0632\u0647\u0627\u06cc \u0645\u062e\u062a\u0644\u0641 \u0648 \u0628\u062f\u0648\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062a\u063a\u06cc\u06cc\u0631\u0627\u062a \u062f\u0631 \u0633\u0645\u062a \u0633\u0631\u0648\u0631 \u0633\u0627\u0632\u06af\u0627\u0631 \u06a9\u0631\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D8%AA%D8%A7%DB%8C%D9%BE_%D9%82%D9%88%DB%8C_%F0%9F%94%A0\"><\/span>\n<p>  \u062a\u0627\u06cc\u067e \u0642\u0648\u06cc \ud83d\udd20<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>GraphQL \u0627\u0632 \u0637\u0631\u062d\u06cc \u0628\u0627 \u062a\u0627\u06cc\u067e \u0642\u0648\u06cc \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u062c\u0627\u0632\u0647 \u0645\u06cc \u062f\u0647\u062f \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0627\u0632 \u0642\u0628\u0644 \u0627\u0639\u062a\u0628\u0627\u0631\u0633\u0646\u062c\u06cc \u0634\u0648\u0646\u062f \u0648 \u067e\u06cc\u0627\u0645 \u0647\u0627\u06cc \u062e\u0637\u0627\u06cc \u062f\u0642\u06cc\u0642 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u0646\u062f.  \u0627\u06cc\u0646 \u0627\u0645\u0631 \u0642\u0627\u0628\u0644\u06cc\u062a \u0627\u0637\u0645\u06cc\u0646\u0627\u0646 \u0648 \u0642\u0627\u0628\u0644\u06cc\u062a \u0646\u06af\u0647\u062f\u0627\u0631\u06cc API \u0631\u0627 \u0628\u0647\u0628\u0648\u062f \u0645\u06cc \u0628\u062e\u0634\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A8%D9%87_%D8%B1%D9%88%D8%B2_%D8%B1%D8%B3%D8%A7%D9%86%DB%8C_%D8%AF%D8%B1_%D8%B2%D9%85%D8%A7%D9%86_%D9%88%D8%A7%D9%82%D8%B9%DB%8C_%D8%A8%D8%A7_%D8%A7%D8%B4%D8%AA%D8%B1%D8%A7%DA%A9_%F0%9F%93%A1\"><\/span>\n<p>  \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc \u0628\u0627 \u0627\u0634\u062a\u0631\u0627\u06a9 \ud83d\udce1<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>GraphQL \u0627\u0632 \u0627\u0634\u062a\u0631\u0627\u06a9 \u0647\u0627\u06cc\u06cc \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u0645\u06a9\u0627\u0646 \u062f\u0631\u06cc\u0627\u0641\u062a \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc \u062f\u0627\u062f\u0647 \u0647\u0627 \u0631\u0627 \u0641\u0631\u0627\u0647\u0645 \u0645\u06cc \u06a9\u0646\u062f.  \u0627\u06cc\u0646 \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0628\u0631\u0627\u06cc \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc\u06cc \u0645\u0641\u06cc\u062f \u0627\u0633\u062a \u06a9\u0647 \u0628\u0647 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u0628\u0647 \u0631\u0648\u0632 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u0646\u062f\u060c \u0645\u0627\u0646\u0646\u062f \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u0686\u062a \u06cc\u0627 \u062f\u0627\u0634\u0628\u0648\u0631\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%B9%D8%A7%DB%8C%D8%A8_GraphQL_%E2%9A%A0\"><\/span>\n<p>  \u0645\u0639\u0627\u06cc\u0628 GraphQL \u26a0<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"%D9%BE%DB%8C%DA%86%DB%8C%D8%AF%DA%AF%DB%8C_%D8%A7%D8%AC%D8%B1%D8%A7%F0%9F%A7%A9\"><\/span>\n<p>  \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u0627\u062c\u0631\u0627\ud83e\udde9<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc GraphQL \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u067e\u06cc\u0686\u06cc\u062f\u0647 \u062a\u0631 \u0627\u0632 REST \u0628\u0627\u0634\u062f\u060c \u0628\u0647 \u062e\u0635\u0648\u0635 \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646\u06cc \u06a9\u0647 \u0628\u0627 \u0627\u06cc\u0646 \u0641\u0646\u0627\u0648\u0631\u06cc \u0622\u0634\u0646\u0627 \u0646\u06cc\u0633\u062a\u0646\u062f.  \u0627\u06cc\u0646 \u0646\u06cc\u0627\u0632 \u0628\u0647 \u062f\u0631\u06a9 \u06a9\u0627\u0645\u0644 \u0637\u0631\u062d\u0648\u0627\u0631\u0647 GraphQL \u0648 \u0632\u0628\u0627\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u062f\u0627\u0631\u062f.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D8%AE%D8%B7%D8%B1%D8%A7%D8%AA_%D8%A7%D9%85%D9%86%DB%8C%D8%AA%DB%8C_%F0%9F%9B%A1%EF%B8%8F\"><\/span>\n<p>  \u062e\u0637\u0631\u0627\u062a \u0627\u0645\u0646\u06cc\u062a\u06cc \ud83d\udee1\ufe0f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0627\u0632 \u0622\u0646\u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u0634\u062a\u0631\u06cc \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f\u060c \u062e\u0637\u0631 \u0628\u0627\u0644\u0627\u062a\u0631\u06cc \u0627\u0632 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc \u0646\u0627\u06a9\u0627\u0631\u0622\u0645\u062f \u0648\u062c\u0648\u062f \u062f\u0627\u0631\u062f \u06a9\u0647 \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0645\u0646\u062c\u0631 \u0628\u0647 \u0627\u0636\u0627\u0641\u0647 \u0628\u0627\u0631 \u0633\u0631\u0648\u0631 \u0634\u0648\u062f.  \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0647\u0627\u06cc \u0645\u062d\u062f\u0648\u062f \u06a9\u0646\u0646\u062f\u0647 \u0648 \u0646\u0638\u0627\u0631\u062a \u0628\u0631 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0633\u06cc\u0627\u0631 \u0645\u0647\u0645 \u0627\u0633\u062a.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%DA%86%D8%A7%D9%84%D8%B4_%D9%87%D8%A7%DB%8C_%D8%B0%D8%AE%DB%8C%D8%B1%D9%87_%D8%B3%D8%A7%D8%B2%DB%8C_%F0%9F%97%84%EF%B8%8F\"><\/span>\n<p>  \u0686\u0627\u0644\u0634 \u0647\u0627\u06cc \u0630\u062e\u06cc\u0631\u0647 \u0633\u0627\u0632\u06cc \ud83d\uddc4\ufe0f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u06a9\u0634 \u06a9\u0631\u062f\u0646 \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627\u06cc GraphQL \u0646\u0633\u0628\u062a \u0628\u0647 REST \u0633\u0627\u062f\u0647 \u062a\u0631 \u0627\u0633\u062a\u060c \u062c\u0627\u06cc\u06cc \u06a9\u0647 \u0645\u0646\u0627\u0628\u0639 \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u0628\u0647 \u0637\u0648\u0631 \u0645\u0646\u062d\u0635\u0631 \u0628\u0647 \u0641\u0631\u062f \u0634\u0646\u0627\u0633\u0627\u06cc\u06cc \u0648 \u0630\u062e\u06cc\u0631\u0647 \u06a9\u0631\u062f.  \u0628\u0631\u0627\u06cc \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u06a9\u0634 \u06a9\u0627\u0631\u0622\u0645\u062f\u060c \u0628\u0647 \u0627\u0633\u062a\u0631\u0627\u062a\u0698\u06cc \u0647\u0627 \u0648 \u0627\u0628\u0632\u0627\u0631\u0647\u0627\u06cc \u0628\u06cc\u0634\u062a\u0631\u06cc \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D9%82%D8%A7%DB%8C%D8%B3%D9%87_GraphQL_%D8%AF%D8%B1_%D9%85%D9%82%D8%A7%D8%A8%D9%84_REST_%F0%9F%A5%8A\"><\/span>\n<p>  \u0645\u0642\u0627\u06cc\u0633\u0647: GraphQL \u062f\u0631 \u0645\u0642\u0627\u0628\u0644 REST \ud83e\udd4a<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<h3><span class=\"ez-toc-section\" id=\"%D9%BE%D8%B1%D8%B3_%D9%88_%D8%AC%D9%88_%D8%AF%D8%A7%D8%AF%D9%87_%D9%87%D8%A7\"><\/span>\n<p>  \u067e\u0631\u0633 \u0648 \u062c\u0648 \u062f\u0627\u062f\u0647 \u0647\u0627<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\n<strong>GraphQL<\/strong>: \u0645\u0634\u062a\u0631\u06cc \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u062f\u0642\u06cc\u0642\u0627 \u0645\u0634\u062e\u0635 \u06a9\u0646\u062f \u06a9\u0647 \u0686\u0647 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0627\u0633\u062a.<\/li>\n<li>\n<strong>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/strong>: \u0633\u0631\u0648\u0631 \u0633\u0627\u062e\u062a\u0627\u0631 \u067e\u0627\u0633\u062e \u0631\u0627 \u062a\u0639\u06cc\u06cc\u0646 \u0645\u06cc \u06a9\u0646\u062f \u06a9\u0647 \u0627\u063a\u0644\u0628 \u0645\u0646\u062c\u0631 \u0628\u0647 \u0628\u0631\u062f\u0627\u0634\u062a \u0628\u06cc\u0634 \u0627\u0632 \u062d\u062f \u06cc\u0627 \u06a9\u0645 \u0648\u0627\u06a9\u0634\u06cc \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A7%D9%86%D8%B9%D8%B7%D8%A7%D9%81_%D9%BE%D8%B0%DB%8C%D8%B1%DB%8C\"><\/span>\n<p>  \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\n<strong>GraphQL<\/strong>: \u0628\u0633\u06cc\u0627\u0631 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631 \u0627\u0633\u062a \u0632\u06cc\u0631\u0627 \u0645\u0634\u062a\u0631\u06cc \u067e\u0631\u0633 \u0648 \u062c\u0648\u0647\u0627 \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u0645\u06cc \u06a9\u0646\u062f.<\/li>\n<li>\n<strong>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/strong>: \u0627\u0646\u0639\u0637\u0627\u0641 \u06a9\u0645\u062a\u0631\u06cc \u062f\u0627\u0631\u062f \u0632\u06cc\u0631\u0627 \u0646\u0642\u0627\u0637 \u067e\u0627\u06cc\u0627\u0646\u06cc API \u0648 \u067e\u0627\u0633\u062e \u0647\u0627\u06cc \u0622\u0646\u0647\u0627 \u062b\u0627\u0628\u062a \u0647\u0633\u062a\u0646\u062f.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"%DA%A9%D8%A7%D8%B1%D8%A7%DB%8C%DB%8C\"><\/span>\n<p>  \u06a9\u0627\u0631\u0627\u06cc\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\n<strong>GraphQL<\/strong>: \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631 \u0627\u0633\u062a \u0632\u06cc\u0631\u0627 \u0641\u0642\u0637 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0645\u0646\u062a\u0642\u0644 \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li>\n<strong>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/strong>: \u062f\u0631 \u0635\u0648\u0631\u062a \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0628\u06cc\u0634\u062a\u0631 \u0627\u0632 \u0646\u06cc\u0627\u0632\u060c \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u0646\u0627\u06a9\u0627\u0631\u0622\u0645\u062f \u0628\u0627\u0634\u062f.<\/li>\n<\/ul>\n<h3><span class=\"ez-toc-section\" id=\"%D8%A8%D9%87_%D8%B1%D9%88%D8%B2_%D8%B1%D8%B3%D8%A7%D9%86%DB%8C_%D8%AF%D8%B1_%D8%B2%D9%85%D8%A7%D9%86_%D9%88%D8%A7%D9%82%D8%B9%DB%8C\"><\/span>\n<p>  \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u062f\u0631 \u0632\u0645\u0627\u0646 \u0648\u0627\u0642\u0639\u06cc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<ul>\n<li>\n<strong>GraphQL<\/strong>: \u062a\u0648\u0633\u0637 \u0627\u0634\u062a\u0631\u0627\u06a9 \u0647\u0627 \u067e\u0634\u062a\u06cc\u0628\u0627\u0646\u06cc \u0645\u06cc \u0634\u0648\u062f.<\/li>\n<li>\n<strong>\u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<\/strong>: \u0628\u0627\u06cc\u062f \u0627\u0632 \u0637\u0631\u06cc\u0642 \u0645\u06a9\u0627\u0646\u06cc\u0633\u0645 \u0647\u0627\u06cc \u0627\u0636\u0627\u0641\u06cc \u0645\u0627\u0646\u0646\u062f WebSockets \u067e\u06cc\u0627\u062f\u0647 \u0633\u0627\u0632\u06cc \u0634\u0648\u062f.<\/li>\n<\/ul>\n<h2><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_%D9%87%D8%A7%DB%8C_%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1%D8%AF%DB%8C_%D8%A8%D8%A7_%D8%AC%D8%A7%D9%88%D8%A7_%D8%A7%D8%B3%DA%A9%D8%B1%DB%8C%D9%BE%D8%AA_%F0%9F%93%9C\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0628\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \ud83d\udcdc<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u062d\u0627\u0644 \u0628\u06cc\u0627\u06cc\u06cc\u062f \u0628\u0647 \u0686\u0646\u062f \u0645\u062b\u0627\u0644 \u0639\u0645\u0644\u06cc \u0628\u0631\u0627\u06cc \u0646\u0634\u0627\u0646 \u062f\u0627\u062f\u0646 \u062a\u0641\u0627\u0648\u062a \u0628\u06cc\u0646 REST \u0648 GraphQL \u0646\u06af\u0627\u0647 \u06a9\u0646\u06cc\u0645.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_1_%D8%A8%D8%A7%D8%B2%DB%8C%D8%A7%D8%A8%DB%8C_%D8%A7%D8%B7%D9%84%D8%A7%D8%B9%D8%A7%D8%AA_%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 1: \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"%D8%A8%D8%A7%D9%82%DB%8C_%D9%85%D8%A7%D9%86%D8%AF%D9%87\"><\/span>\n<p>  \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>\u0628\u0627 \u06cc\u06a9 API RESTful\u060c \u0634\u0645\u0627 \u0645\u0639\u0645\u0648\u0644\u0627\u064b \u0686\u0646\u062f\u06cc\u0646 \u0646\u0642\u0637\u0647 \u067e\u0627\u06cc\u0627\u0646\u06cc \u0631\u0627 \u0628\u0631\u0627\u06cc \u062f\u0631\u06cc\u0627\u0641\u062a \u062a\u0645\u0627\u0645 \u062f\u0627\u062f\u0647\u200c\u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u062e\u0648\u062f \u0641\u0631\u0627\u062e\u0648\u0627\u0646\u06cc \u0645\u06cc\u200c\u06a9\u0646\u06cc\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"c1\">\/\/ Benutzerinformationen abrufen<\/span>\n<span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">https:\/\/api.example.com\/users\/1<\/span><span class=\"dl\">'<\/span><span class=\"p\">)<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">())<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n    <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">name<\/span><span class=\"p\">);<\/span>\n    <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">email<\/span><span class=\"p\">);<\/span>\n    <span class=\"c1\">\/\/ Weitere Details abrufen<\/span>\n    <span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"s2\">`https:\/\/api.example.com\/users\/1\/posts`<\/span><span class=\"p\">)<\/span>\n      <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">())<\/span>\n      <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">posts<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">posts<\/span><span class=\"p\">));<\/span>\n  <span class=\"p\">});<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u06a9\u0627\u0631\u0628\u0631 \u0627\u0628\u062a\u062f\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u0645\u06cc \u0634\u0648\u062f \u0648 \u0633\u067e\u0633 \u062f\u0631 \u06cc\u06a9 \u062a\u0645\u0627\u0633 \u062f\u0648\u0645 \u0628\u0627 \u067e\u0633\u062a \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u062a\u0645\u0627\u0633 \u0645\u06cc \u06af\u06cc\u0631\u062f.  \u0627\u06cc\u0646 \u0645\u0646\u062c\u0631 \u0628\u0647 \u062a\u0645\u0627\u0633\u200c\u0647\u0627\u06cc \u0634\u0628\u06a9\u0647\u200c\u0627\u06cc \u0645\u062a\u0639\u062f\u062f \u0648 \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u0646\u0627\u06a9\u0627\u0631\u0622\u0645\u062f \u0645\u06cc\u200c\u0634\u0648\u062f.<\/p>\n<h4><span class=\"ez-toc-section\" id=\"GraphQL\"><\/span>\n<p>  GraphQL<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>\u0628\u0627 GraphQL\u060c \u062a\u0645\u0627\u0645 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0631\u0627 \u0645\u06cc \u062a\u0648\u0627\u0646 \u062f\u0631 \u06cc\u06a9 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0631\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"kd\">const<\/span> <span class=\"nx\">query<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">`\n  query {\n    user(id: \"1\") {\n      name\n      email\n      posts {\n        title\n        content\n      }\n    }\n  }\n`<\/span><span class=\"p\">;<\/span>\n\n<span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">https:\/\/api.example.com\/graphql<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span>\n  <span class=\"na\">method<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">POST<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span>\n  <span class=\"na\">headers<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\n    <span class=\"dl\">'<\/span><span class=\"s1\">Content-Type<\/span><span class=\"dl\">'<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">application\/json<\/span><span class=\"dl\">'<\/span>\n  <span class=\"p\">},<\/span>\n  <span class=\"na\">body<\/span><span class=\"p\">:<\/span> <span class=\"nx\">JSON<\/span><span class=\"p\">.<\/span><span class=\"nf\">stringify<\/span><span class=\"p\">({<\/span> <span class=\"nx\">query<\/span> <span class=\"p\">})<\/span>\n<span class=\"p\">})<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">())<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n    <span class=\"kd\">const<\/span> <span class=\"nx\">user<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">data<\/span><span class=\"p\">.<\/span><span class=\"nx\">data<\/span><span class=\"p\">.<\/span><span class=\"nx\">user<\/span><span class=\"p\">;<\/span>\n    <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">name<\/span><span class=\"p\">);<\/span>\n    <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">email<\/span><span class=\"p\">);<\/span>\n    <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">posts<\/span><span class=\"p\">);<\/span>\n  <span class=\"p\">});<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u06cc\u0646 \u0645\u062b\u0627\u0644 \u0627\u0632 \u06cc\u06a9 \u067e\u0631\u0633 \u0648 \u062c\u0648 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0645\u06cc \u06a9\u0646\u062f \u062a\u0627 \u0647\u0645 \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u0648 \u0647\u0645 \u067e\u0633\u062a \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u0628\u0627\u0632\u06cc\u0627\u0628\u06cc \u06a9\u0646\u062f \u0648 \u062f\u0631 \u0646\u062a\u06cc\u062c\u0647 \u0627\u0646\u062a\u0642\u0627\u0644 \u062f\u0627\u062f\u0647 \u06a9\u0627\u0631\u0622\u0645\u062f\u062a\u0631 \u0627\u0633\u062a.<\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%AB%D8%A7%D9%84_2_%DB%8C%DA%A9_%DA%A9%D8%A7%D8%B1%D8%A8%D8%B1_%D8%B1%D8%A7_%D8%A8%D9%87_%D8%B1%D9%88%D8%B2_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u062b\u0627\u0644 2: \u06cc\u06a9 \u06a9\u0627\u0631\u0628\u0631 \u0631\u0627 \u0628\u0647 \u0631\u0648\u0632 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<h4><span class=\"ez-toc-section\" id=\"%D8%A8%D8%A7%D9%82%DB%8C_%D9%85%D8%A7%D9%86%D8%AF%D9%87-2\"><\/span>\n<p>  \u0628\u0627\u0642\u06cc \u0645\u0627\u0646\u062f\u0647<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>\u0628\u0627 RESTful API\u060c \u0628\u0647\u200c\u0631\u0648\u0632\u0631\u0633\u0627\u0646\u06cc \u06a9\u0627\u0631\u0628\u0631 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u062a\u0645\u0627\u0633 PUT \u06cc\u0627 PATCH \u0627\u0646\u062c\u0627\u0645 \u0645\u06cc\u200c\u0634\u0648\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">https:\/\/api.example.com\/users\/1<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span>\n  <span class=\"na\">method<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">PUT<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span>\n  <span class=\"na\">headers<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\n    <span class=\"dl\">'<\/span><span class=\"s1\">Content-Type<\/span><span class=\"dl\">'<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">application\/json<\/span><span class=\"dl\">'<\/span>\n  <span class=\"p\">},<\/span>\n  <span class=\"na\">body<\/span><span class=\"p\">:<\/span> <span class=\"nx\">JSON<\/span><span class=\"p\">.<\/span><span class=\"nf\">stringify<\/span><span class=\"p\">({<\/span>\n    <span class=\"na\">name<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">Neuer Name<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span>\n    <span class=\"na\">email<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">neueemail@example.com<\/span><span class=\"dl\">'<\/span>\n  <span class=\"p\">})<\/span>\n<span class=\"p\">})<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">())<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">));<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h4><span class=\"ez-toc-section\" id=\"GraphQL-2\"><\/span>\n<p>  GraphQL<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h4>\n<p>\u062f\u0631 GraphQL \u0627\u06cc\u0646 \u0627\u0632 \u0637\u0631\u06cc\u0642 \u06cc\u06a9 \u062c\u0647\u0634 \u0628\u0647 \u062f\u0633\u062a \u0645\u06cc \u0622\u06cc\u062f.<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"kd\">const<\/span> <span class=\"nx\">mutation<\/span> <span class=\"o\">=<\/span> <span class=\"s2\">`\n  mutation {\n    updateUser(id: \"1\", input: {\n      name: \"Neuer Name\",\n      email: \"neueemail@example.com\"\n    }) {\n      name\n      email\n    }\n  }\n`<\/span><span class=\"p\">;<\/span>\n\n<span class=\"nf\">fetch<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">https:\/\/api.example.com\/graphql<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"p\">{<\/span>\n  <span class=\"na\">method<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">POST<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span>\n  <span class=\"na\">headers<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\n    <span class=\"dl\">'<\/span><span class=\"s1\">Content-Type<\/span><span class=\"dl\">'<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">application\/json<\/span><span class=\"dl\">'<\/span>\n  <span class=\"p\">},<\/span>\n  <span class=\"na\">body<\/span><span class=\"p\">:<\/span> <span class=\"nx\">JSON<\/span><span class=\"p\">.<\/span><span class=\"nf\">stringify<\/span><span class=\"p\">({<\/span> <span class=\"na\">query<\/span><span class=\"p\">:<\/span> <span class=\"nx\">mutation<\/span> <span class=\"p\">})<\/span>\n<span class=\"p\">})<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">response<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">response<\/span><span class=\"p\">.<\/span><span class=\"nf\">json<\/span><span class=\"p\">())<\/span>\n  <span class=\"p\">.<\/span><span class=\"nf\">then<\/span><span class=\"p\">(<\/span><span class=\"nx\">data<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n    <span class=\"kd\">const<\/span> <span class=\"nx\">user<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">data<\/span><span class=\"p\">.<\/span><span class=\"nx\">data<\/span><span class=\"p\">.<\/span><span class=\"nx\">updateUser<\/span><span class=\"p\">;<\/span>\n    <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">name<\/span><span class=\"p\">);<\/span>\n    <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">email<\/span><span class=\"p\">);<\/span>\n  <span class=\"p\">});<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u062f\u0631 \u0627\u06cc\u0646\u062c\u0627 \u0645\u062b\u0627\u0644 \u0646\u062d\u0648\u0647 \u0627\u0633\u062a\u0641\u0627\u062f\u0647 \u0627\u0632 \u062c\u0647\u0634 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0628\u0647 \u0631\u0648\u0632 \u0631\u0633\u0627\u0646\u06cc \u0627\u0637\u0644\u0627\u0639\u0627\u062a \u06a9\u0627\u0631\u0628\u0631 \u062f\u0631 \u062d\u06cc\u0646 \u0628\u0627\u0632\u06af\u0631\u062f\u0627\u0646\u062f\u0646 \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u062a\u063a\u06cc\u06cc\u0631 \u06cc\u0627\u0641\u062a\u0647 \u0646\u0634\u0627\u0646 \u0645\u06cc \u062f\u0647\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%D8%B3%D8%B1%D9%88%D8%B1_GraphQL_%D8%A8%D8%A7_Nodejs_%F0%9F%8C%90\"><\/span>\n<p>  \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u0633\u0631\u0648\u0631 GraphQL \u0628\u0627 Node.js \ud83c\udf10<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>\u0628\u0631\u0627\u06cc \u0627\u06cc\u062c\u0627\u062f \u06cc\u06a9 \u0633\u0631\u0648\u0631 GraphQL \u0628\u0627 Node.js \u0628\u0647 \u0627\u0628\u0632\u0627\u0631\u0647\u0627 \u0648 \u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0647\u0627\u06cc \u0632\u06cc\u0631 \u0646\u06cc\u0627\u0632 \u062f\u0627\u0631\u06cc\u0645:<\/p>\n<p>Node.js \u2013 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0631\u0627 \u062f\u0631 \u0647\u0645\u0647 \u062c\u0627 \u0627\u062c\u0631\u0627 \u06a9\u0646\u06cc\u062f<img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--8odvnRDO--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/nodejs.org\/zh-cn\/next-data\/og%3Ftitle%3DNode.js%2520%25E2%2580%2594%2520Run%2520JavaScript%2520Everywhere%26type%3Dannouncement\" alt=\"\u067e\u06cc\u0634 \u0646\u0645\u0627\u06cc\u0634 \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"400\" title=\"\">Node.js\u00ae \u06cc\u06a9 \u0632\u0645\u0627\u0646 \u0627\u062c\u0631\u0627 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a \u0627\u0633\u062a \u06a9\u0647 \u0628\u0631 \u0631\u0648\u06cc \u0645\u0648\u062a\u0648\u0631 \u062c\u0627\u0648\u0627 \u0627\u0633\u06a9\u0631\u06cc\u067e\u062a V8 \u06a9\u0631\u0648\u0645 \u0633\u0627\u062e\u062a\u0647 \u0634\u062f\u0647 \u0627\u0633\u062a.<\/p>\n<p>Express &#8211; \u0686\u0627\u0631\u0686\u0648\u0628 Node.js \u0628\u0631\u0646\u0627\u0645\u0647 \u0647\u0627\u06cc \u06a9\u0627\u0631\u0628\u0631\u062f\u06cc \u0648\u0628<img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--c7NJfgPP--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/expressjs.com\/images\/arrow.png\" alt=\"\u067e\u06cc\u0634 \u0646\u0645\u0627\u06cc\u0634 \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"14\" height=\"10\" title=\"\"><\/p>\n<ul>\n<li>\u0622\u067e\u0648\u0644\u0648 \u0633\u0631\u0648\u0631 (\u06a9\u062a\u0627\u0628\u062e\u0627\u0646\u0647 \u0633\u0631\u0648\u0631 GraphQL)<\/li>\n<\/ul>\n<p>\u0622\u0634\u0646\u0627\u06cc\u06cc \u0628\u0627 \u0633\u0631\u0648\u0631 \u0622\u067e\u0648\u0644\u0648<img decoding=\"async\" src=\"https:\/\/res.cloudinary.com\/practicaldev\/image\/fetch\/s--7WvAGnOg--\/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_800\/https:\/\/res.cloudinary.com\/apollographql\/image\/upload\/w_1280%2Ch_669%2Cc_fill%2Cq_auto%2Cf_auto\/w_1120%2Cc_fit%2Cco_rgb:CFD7D6%2Cg_south_west%2Cx_90%2Cy_300%2Cl_text:odyssey:fonts:AeonikBold.otf_80:Introduction%2520to%2520Apollo%2520Server\/docs-thumbnail_z8ifvw\" alt=\"\u067e\u06cc\u0634 \u0646\u0645\u0627\u06cc\u0634 \u062a\u0635\u0648\u06cc\u0631\" loading=\"lazy\" width=\"800\" height=\"418\" title=\"\"><\/p>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_1_%D9%BE%D8%B1%D9%88%DA%98%D9%87_%D8%B1%D8%A7_%D8%AA%D9%86%D8%B8%DB%8C%D9%85_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 1: \u067e\u0631\u0648\u0698\u0647 \u0631\u0627 \u062a\u0646\u0638\u06cc\u0645 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u06cc\u06a9 \u062f\u0627\u06cc\u0631\u06a9\u062a\u0648\u0631\u06cc \u062c\u062f\u06cc\u062f \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f \u0648 \u06cc\u06a9 \u067e\u0631\u0648\u0698\u0647 Node.js \u0631\u0627 \u0645\u0642\u062f\u0627\u0631\u062f\u0647\u06cc \u0627\u0648\u0644\u06cc\u0647 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code><span class=\"nb\">mkdir <\/span>graphql-server\n<span class=\"nb\">cd <\/span>graphql-server\nnpm init <span class=\"nt\">-y<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0648\u0627\u0628\u0633\u062a\u06af\u06cc \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632 \u0631\u0627 \u0646\u0635\u0628 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>npm <span class=\"nb\">install <\/span>express apollo-server-express graphql\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_2_%D8%B7%D8%B1%D8%AD%D9%88%D8%A7%D8%B1%D9%87_%D9%88_%D8%AD%D9%84_%DA%A9%D9%86%D9%86%D8%AF%D9%87_GraphQL_%D8%B1%D8%A7_%D8%AA%D8%B9%D8%B1%DB%8C%D9%81_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 2: \u0637\u0631\u062d\u0648\u0627\u0631\u0647 \u0648 \u062d\u0644 \u06a9\u0646\u0646\u062f\u0647 GraphQL \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f <code>schema.js<\/code> \u0648 \u0637\u0631\u062d\u0648\u0627\u0631\u0647 \u0648 \u062d\u0644 \u06a9\u0646\u0646\u062f\u0647 \u0647\u0627\u06cc GraphQL \u0631\u0627 \u062a\u0639\u0631\u06cc\u0641 \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"kd\">const<\/span> <span class=\"p\">{<\/span> <span class=\"nx\">gql<\/span> <span class=\"p\">}<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">require<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">apollo-server-express<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n\n<span class=\"c1\">\/\/ Definiere das GraphQL-Schema<\/span>\n<span class=\"kd\">const<\/span> <span class=\"nx\">typeDefs<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">gql<\/span><span class=\"s2\">`\n  type User {\n    id: ID!\n    name: String!\n    email: String!\n  }\n\n  type Query {\n    user(id: ID!): User\n  }\n\n  type Mutation {\n    updateUser(id: ID!, name: String!, email: String!): User\n  }\n`<\/span><span class=\"p\">;<\/span>\n\n<span class=\"c1\">\/\/ Beispiel-Daten<\/span>\n<span class=\"kd\">const<\/span> <span class=\"nx\">users<\/span> <span class=\"o\">=<\/span> <span class=\"p\">[<\/span>\n  <span class=\"p\">{<\/span> <span class=\"na\">id<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">1<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"na\">name<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">Max Mustermann<\/span><span class=\"dl\">'<\/span><span class=\"p\">,<\/span> <span class=\"na\">email<\/span><span class=\"p\">:<\/span> <span class=\"dl\">'<\/span><span class=\"s1\">max@example.com<\/span><span class=\"dl\">'<\/span> <span class=\"p\">},<\/span>\n<span class=\"p\">];<\/span>\n\n<span class=\"c1\">\/\/ Definiere die Resolver<\/span>\n<span class=\"kd\">const<\/span> <span class=\"nx\">resolvers<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span>\n  <span class=\"na\">Query<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\n    <span class=\"na\">user<\/span><span class=\"p\">:<\/span> <span class=\"p\">(<\/span><span class=\"nx\">parent<\/span><span class=\"p\">,<\/span> <span class=\"nx\">args<\/span><span class=\"p\">)<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">find<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span> <span class=\"o\">===<\/span> <span class=\"nx\">args<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">),<\/span>\n  <span class=\"p\">},<\/span>\n  <span class=\"na\">Mutation<\/span><span class=\"p\">:<\/span> <span class=\"p\">{<\/span>\n    <span class=\"na\">updateUser<\/span><span class=\"p\">:<\/span> <span class=\"p\">(<\/span><span class=\"nx\">parent<\/span><span class=\"p\">,<\/span> <span class=\"nx\">args<\/span><span class=\"p\">)<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"p\">{<\/span>\n      <span class=\"kd\">const<\/span> <span class=\"nx\">user<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">users<\/span><span class=\"p\">.<\/span><span class=\"nf\">find<\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span> <span class=\"o\">=&gt;<\/span> <span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span> <span class=\"o\">===<\/span> <span class=\"nx\">args<\/span><span class=\"p\">.<\/span><span class=\"nx\">id<\/span><span class=\"p\">);<\/span>\n      <span class=\"k\">if <\/span><span class=\"p\">(<\/span><span class=\"nx\">user<\/span><span class=\"p\">)<\/span> <span class=\"p\">{<\/span>\n        <span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">name<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">args<\/span><span class=\"p\">.<\/span><span class=\"nx\">name<\/span><span class=\"p\">;<\/span>\n        <span class=\"nx\">user<\/span><span class=\"p\">.<\/span><span class=\"nx\">email<\/span> <span class=\"o\">=<\/span> <span class=\"nx\">args<\/span><span class=\"p\">.<\/span><span class=\"nx\">email<\/span><span class=\"p\">;<\/span>\n      <span class=\"p\">}<\/span>\n      <span class=\"k\">return<\/span> <span class=\"nx\">user<\/span><span class=\"p\">;<\/span>\n    <span class=\"p\">},<\/span>\n  <span class=\"p\">},<\/span>\n<span class=\"p\">};<\/span>\n\n<span class=\"nx\">module<\/span><span class=\"p\">.<\/span><span class=\"nx\">exports<\/span> <span class=\"o\">=<\/span> <span class=\"p\">{<\/span> <span class=\"nx\">typeDefs<\/span><span class=\"p\">,<\/span> <span class=\"nx\">resolvers<\/span> <span class=\"p\">};<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_3_%D8%B3%D8%B1%D9%88%D8%B1_GraphQL_%D8%B1%D8%A7_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 3: \u0633\u0631\u0648\u0631 GraphQL \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u06cc\u06a9 \u0641\u0627\u06cc\u0644 \u0627\u06cc\u062c\u0627\u062f \u06a9\u0646\u06cc\u062f <code>index.js<\/code> \u0648 \u0633\u0631\u0648\u0631 GraphQL \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight javascript\"><code><span class=\"kd\">const<\/span> <span class=\"nx\">express<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">require<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">express<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n<span class=\"kd\">const<\/span> <span class=\"p\">{<\/span> <span class=\"nx\">ApolloServer<\/span> <span class=\"p\">}<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">require<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">apollo-server-express<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n<span class=\"kd\">const<\/span> <span class=\"p\">{<\/span> <span class=\"nx\">typeDefs<\/span><span class=\"p\">,<\/span> <span class=\"nx\">resolvers<\/span> <span class=\"p\">}<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">require<\/span><span class=\"p\">(<\/span><span class=\"dl\">'<\/span><span class=\"s1\">.\/schema<\/span><span class=\"dl\">'<\/span><span class=\"p\">);<\/span>\n\n<span class=\"kd\">const<\/span> <span class=\"nx\">app<\/span> <span class=\"o\">=<\/span> <span class=\"nf\">express<\/span><span class=\"p\">();<\/span>\n<span class=\"kd\">const<\/span> <span class=\"nx\">server<\/span> <span class=\"o\">=<\/span> <span class=\"k\">new<\/span> <span class=\"nc\">ApolloServer<\/span><span class=\"p\">({<\/span> <span class=\"nx\">typeDefs<\/span><span class=\"p\">,<\/span> <span class=\"nx\">resolvers<\/span> <span class=\"p\">});<\/span>\n\n<span class=\"nx\">server<\/span><span class=\"p\">.<\/span><span class=\"nf\">applyMiddleware<\/span><span class=\"p\">({<\/span> <span class=\"nx\">app<\/span> <span class=\"p\">});<\/span>\n\n<span class=\"nx\">app<\/span><span class=\"p\">.<\/span><span class=\"nf\">listen<\/span><span class=\"p\">({<\/span> <span class=\"na\">port<\/span><span class=\"p\">:<\/span> <span class=\"mi\">4000<\/span> <span class=\"p\">},<\/span> <span class=\"p\">()<\/span> <span class=\"o\">=&gt;<\/span>\n  <span class=\"nx\">console<\/span><span class=\"p\">.<\/span><span class=\"nf\">log<\/span><span class=\"p\">(<\/span><span class=\"s2\">`\ud83d\ude80 Server ready at http:\/\/localhost:4000<\/span><span class=\"p\">${<\/span><span class=\"nx\">server<\/span><span class=\"p\">.<\/span><span class=\"nx\">graphqlPath<\/span><span class=\"p\">}<\/span><span class=\"s2\">`<\/span><span class=\"p\">)<\/span>\n<span class=\"p\">);<\/span>\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<h3><span class=\"ez-toc-section\" id=\"%D9%85%D8%B1%D8%AD%D9%84%D9%87_4_%D8%B3%D8%B1%D9%88%D8%B1_%D8%B1%D8%A7_%D8%B1%D8%A7%D9%87_%D8%A7%D9%86%D8%AF%D8%A7%D8%B2%DB%8C_%DA%A9%D9%86%DB%8C%D8%AF\"><\/span>\n<p>  \u0645\u0631\u062d\u0644\u0647 4: \u0633\u0631\u0648\u0631 \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h3>\n<p>\u0633\u0631\u0648\u0631 \u0631\u0627 \u0631\u0627\u0647 \u0627\u0646\u062f\u0627\u0632\u06cc \u06a9\u0646\u06cc\u062f:<\/p>\n<div class=\"highlight js-code-highlight\">\n<pre class=\"highlight shell\"><code>node index.js\n\n<\/code><\/pre>\n<div class=\"highlight__panel js-actions-panel\">\n<div class=\"highlight__panel-action js-fullscreen-code-action\">\n    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-on\"><title>\u0648\u0627\u0631\u062f \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M16 3h6v6h-2V5h-4V3zM2 3h6v2H4v4H2V3zm18 16v-4h2v6h-6v-2h4zM4 19h4v2H2v-6h2v4z\"\/>\n<\/svg><\/p>\n<p>    <svg xmlns=\"http:\/\/www.w3.org\/2000\/svg\" width=\"20px\" height=\"20px\" viewbox=\"0 0 24 24\" class=\"highlight-action crayons-icon highlight-action--fullscreen-off\"><title>\u0627\u0632 \u062d\u0627\u0644\u062a \u062a\u0645\u0627\u0645 \u0635\u0641\u062d\u0647 \u062e\u0627\u0631\u062c \u0634\u0648\u06cc\u062f<\/title>\n    <path d=\"M18 7h4v2h-6V3h2v4zM8 9H2V7h4V3h2v6zm10 8v4h-2v-6h6v2h-4zM8 15v6H6v-4H2v-2h6z\"\/>\n<\/svg><\/p>\n<\/div>\n<\/div>\n<\/div>\n<p>\u0627\u06a9\u0646\u0648\u0646 \u0633\u0631\u0648\u0631 GraphQL \u0634\u0645\u0627 \u0627\u0632 \u06a9\u0627\u0631 \u0627\u0641\u062a\u0627\u062f\u0647 \u0627\u0633\u062a <code>http:\/\/localhost:4000\/graphql<\/code>.  \u0645\u06cc \u062a\u0648\u0627\u0646\u06cc\u062f \u0628\u0627 \u0628\u0627\u0632 \u06a9\u0631\u062f\u0646 URL \u062f\u0631 \u0645\u0631\u0648\u0631\u06af\u0631 \u062e\u0648\u062f \u0648 \u0627\u062c\u0631\u0627\u06cc \u067e\u0631\u0633 \u0648 \u062c\u0648 \u062f\u0631 Apollo Playground \u0633\u0631\u0648\u0631 \u0631\u0627 \u0622\u0632\u0645\u0627\u06cc\u0634 \u06a9\u0646\u06cc\u062f.<\/p>\n<h2><span class=\"ez-toc-section\" id=\"%D9%86%D8%AA%DB%8C%D8%AC%D9%87_%DA%AF%DB%8C%D8%B1%DB%8C_%F0%9F%93%8B\"><\/span>\n<p>  \u0646\u062a\u06cc\u062c\u0647 \u06af\u06cc\u0631\u06cc \ud83d\udccb<br \/>\n<span class=\"ez-toc-section-end\"><\/span><\/h2>\n<p>GraphQL \u0645\u0632\u0627\u06cc\u0627\u06cc \u0632\u06cc\u0627\u062f\u06cc \u0646\u0633\u0628\u062a \u0628\u0647 API \u0647\u0627\u06cc RESTful \u062f\u0627\u0631\u062f\u060c \u0628\u0647 \u0648\u06cc\u0698\u0647 \u0627\u0632 \u0646\u0638\u0631 \u0627\u0646\u0639\u0637\u0627\u0641 \u067e\u0630\u06cc\u0631\u06cc \u0648 \u06a9\u0627\u0631\u0627\u06cc\u06cc.  \u0628\u0627 \u0627\u06cc\u0646 \u062d\u0627\u0644\u060c \u067e\u06cc\u0686\u06cc\u062f\u06af\u06cc \u0648 \u0686\u0627\u0644\u0634 \u0647\u0627\u06cc \u0627\u0645\u0646\u06cc\u062a\u06cc \u0628\u06cc\u0634\u062a\u0631\u06cc \u0631\u0627 \u0646\u06cc\u0632 \u0628\u0647 \u0647\u0645\u0631\u0627\u0647 \u062f\u0627\u0631\u062f.  \u0628\u0631\u0627\u06cc \u062a\u0648\u0633\u0639\u0647 \u062f\u0647\u0646\u062f\u06af\u0627\u0646 \u0622\u0645\u0627\u062f\u0647 \u0628\u0631\u0627\u06cc \u0645\u0642\u0627\u0628\u0644\u0647 \u0628\u0627 \u0627\u06cc\u0646 \u0686\u0627\u0644\u0634 \u0647\u0627\u060c GraphQL \u0645\u06cc \u062a\u0648\u0627\u0646\u062f \u06cc\u06a9 \u0641\u0646\u0627\u0648\u0631\u06cc \u0642\u062f\u0631\u062a\u0645\u0646\u062f \u0648 \u067e\u06cc\u0634\u06af\u0627\u0645 \u0628\u0627\u0634\u062f.<\/p>\n<p>\u0627\u06af\u0631 \u0633\u0624\u0627\u0644 \u06cc\u0627 \u0646\u0638\u0631\u06cc \u062f\u0631 \u0645\u0648\u0631\u062f GraphQL \u062f\u0627\u0631\u06cc\u062f\u060c \u0644\u0637\u0641\u0627\u064b \u0646\u0638\u0631 \u062e\u0648\u062f \u0631\u0627 \u0628\u0646\u0648\u06cc\u0633\u06cc\u062f \u06cc\u0627 \u0641\u0642\u0637 \u0628\u0647 \u0627\u0646\u062c\u0645\u0646 \u0645\u0631\u0627\u062c\u0639\u0647 \u06a9\u0646\u06cc\u062f.<\/p>\n<hr\/>\n<p>\u0627\u06af\u0631 \u067e\u0633\u062a\u200c\u0647\u0627\u06cc \u0645\u0646 \u0631\u0627 \u062f\u0648\u0633\u062a \u062f\u0627\u0631\u06cc\u062f\u060c \u062e\u0648\u0628 \u0627\u0633\u062a \u0627\u06af\u0631 \u0648\u0628\u0644\u0627\u06af \u0645\u0646 \u0631\u0627 \u0628\u0631\u0627\u06cc \u0645\u0637\u0627\u0644\u0628 \u0641\u0646\u06cc \u0628\u06cc\u0634\u062a\u0631 \u062f\u0646\u0628\u0627\u0644 \u06a9\u0646\u06cc\u062f.<\/p>\n<\/p><\/div>\n","protected":false},"excerpt":{"rendered":"<p>Summarize this content to 400 words in Persian Lang GraphQL \u062f\u0631 \u0645\u0642\u0627\u0628\u0644 REST: \u0645\u0632\u0627\u06cc\u0627 \u0648 \u0645\u0639\u0627\u06cc\u0628 \u0632\u0628\u0627\u0646 \u06a9\u0648\u0626\u0631\u06cc \u0645\u062f\u0631\u0646 \u0631\u0627 \u0628\u0631\u0627\u06cc API\u0647\u0627 \u06a9\u0634\u0641 \u06a9\u0646\u06cc\u062f! \ud83c\udf10 \u062a\u0635\u0648\u0631 \u06a9\u0646\u06cc\u062f \u0628\u062a\u0648\u0627\u0646\u06cc\u062f \u06cc\u06a9 API \u0631\u0627 \u0633\u0641\u0627\u0631\u0634\u06cc \u06a9\u0646\u06cc\u062f \u062a\u0627 \u062f\u0642\u06cc\u0642\u0627\u064b \u062f\u0627\u062f\u0647 \u0647\u0627\u06cc \u0645\u0648\u0631\u062f \u0646\u06cc\u0627\u0632\u062a\u0627\u0646 \u0631\u0627 \u0627\u0631\u0627\u0626\u0647 \u062f\u0647\u062f\u060c \u0646\u0647 \u0628\u06cc\u0634\u062a\u0631 \u0648 \u0646\u0647 \u06a9\u0645\u062a\u0631. \u0627\u06cc\u0646 \u0648\u0639\u062f\u0647 GraphQL \u0627\u0633\u062a. \u062f\u0631 \u062d\u0627\u0644\u06cc \u06a9\u0647 API &hellip;<\/p>\n","protected":false},"author":2,"featured_media":72075,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"fifu_image_url":"","fifu_image_alt":"","footnotes":""},"categories":[339],"tags":[],"class_list":["post-72074","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-dev"],"_links":{"self":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/72074","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/comments?post=72074"}],"version-history":[{"count":0,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/posts\/72074\/revisions"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media\/72075"}],"wp:attachment":[{"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/media?parent=72074"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/categories?post=72074"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/nabfollower.com\/blog\/wp-json\/wp\/v2\/tags?post=72074"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}