Запрос элемента узла GraphQL в Shopify ScriptTag - PullRequest
0 голосов
/ 24 июня 2019

Я новичок и испытываю некоторые трудности с выводом при выполнении запроса GraphQL на скрипт сценария shopify.

Мой текущий код выглядит так:

const test4 = gql`
query {
  scriptTags(first: 4) {
    edges {
      node {
        id
        src
      }
    }
  }
}
`;

const GiveData = () => (
  <Query query={test4}>
    {({ loading, error, data }) => {
          if (loading) return "Loading...";
          if (error) return `Error! ${error.message}`;

          return (                          
          <div>
          <p> hi1 </p>
            {data.scriptTags.edges.map(({ node }) => (              
              <div key={node.src}>
                <p>
                  hi2 {node.src}
                </p>
              </div>
            ))}
          </div>
          );

    }}
  </Query>
);

Моя страница отображаетТекстовый текст "hi1", но "hi2" и фактические данные никогда не загружаются.Моя консоль также не выводит никаких ошибок.

Сам код запроса работает отлично, если я запускаю его через приложение Shopify GraphiQL, поэтому я предполагаю, что это не так.Я полагаю, что я делаю что-то не так в константе GiveData, но не уверен, что.

Заранее благодарен за любую помощь или подсказки.


Дополнительные сведения: у меня есть базовое приложение shopifyустановка, используя установку response + node.js (на основе шаблонов и учебника shopify).

В моем файле server.js есть области тегов сценария:

...
        createShopifyAuth({
          apiKey: SHOPIFY_API_KEY,
          secret: SHOPIFY_API_SECRET_KEY,
          scopes: ['read_products', 'write_products', 'read_script_tags', 'write_script_tags'],
...

Я смогнапишите тег сценария, как он отображается в приложении Shopify GraphiQL. Снимок экрана: вывод .

Я также могу получить вывод из другого запроса GraphQL.Например, эта

const test3 = gql`
query {
  shop {
    id
  }
}
`;

с той же базовой константой GiveData, приведенной выше, выдаст результат, если у меня будет ... {data.shop.id} ... в моем поле возврата.

В первую очередь я хочу запросить теги сценария, которые я смог написать сам (а не что-либо вне моего приложения).

1 Ответ

0 голосов
/ 24 июня 2019

Это поможет узнать контекст вашего звонка.В Shopify GraphiQL явно вы аутентифицированы, конечная точка установлена, все хорошо.Отойдите от этого и ваши обязанности возрастут.Вы можете сделать запрос, используя частный пароль API приложения или обычное приложение с токеном oAuth, который имеет доступ к тегам сценария.А ты какой

Не зная больше о том, что вы делаете, вам трудно помочь.Кроме того, вероятность того, что Shopify покажет вам любые теги сценариев, которые не принадлежат ключу API, который их создал, т. Е. Ваш, минимальна.

...