Node.JS: Извлечение по сравнению с использованием клиентской библиотеки GraphQL для использования конечной точки GraphQL

#node.js #graphql #fetch #apollo-client

Вопрос:

В моем Node.js проект, в котором мне нужно использовать существующую конечную точку GraphQL (на совершенно другом сервере). Используя fetch, я смог сделать это вот так…

 app.get("/test", (req, res) => {
  fetch(endpoint, {
    method: "POST",
    headers: {
      Authorization: `bearer ${token}`,
      "Content-Type": "application/json",
      Accept: "application/json",
    },
    body: JSON.stringify({
      query: `{ vehicle(code: "Xmr1") {code,isAvailable} }`,
    }),
  })
    .then((r) => r.json())
    .then((data) => res.send(data));
});
 

Это прекрасно работает.

В своих исследованиях до сих пор я сталкивался с несколькими «клиентскими» библиотеками GraphQL, такими как Relay, Apollo и т. Д… Обычно они, по-видимому, используются в сочетании с чем-то вроде React.

Могу ли я также использовать их в узле.JS, чтобы использовать существующую конечную точку GraphQL? Если да, то для Узла.Приложение JS server, которое я создаю, каковы реальные преимущества использования клиентской библиотеки GraphQL по сравнению с использованием простой «выборки», как я сделал выше?

Заранее спасибо за ваши ответы!