Shopifyのテーマ(liquid)からGraphQLを使ってShopifyAPIにリクエストを送ることは可能でしょうか?
それともnodeサーバーなどの設定が必要になりますか?
どなたかわかる方いましたらよろしくお願いします。
解決済! ベストソリューションを見る。
成功
可能かと思います。ApolloなどのGraphQLのクライアントを用いる方法と、いわゆるAjax(axios, fetch API, jQuery)でREST APIとしてリクエストを送る方法があると思います。
以下に詳細が書かれているドキュメントを示しますが、特にnodeサーバーなどは立てる必要はないと思います。
=> https://shopify.dev/docs/admin-api/getting-started
特殊な処理を中間で噛ませる場合は必要になるかもしれません。例えばGraphQLで取得したデータを整形してフロントに返却するとか。
ここで注意したいのが、ページを読み込む際に利用するデータをGraphQLから取得するのは避けた方がいいのではないかと思います(ページのレンダリングが遅くなるため)。
Liquidからデータが取得できるものはできるだけLiquidから取得した方がいいという事です。
スクリプトを介してGraphQLへリクエストを送るのは更新処理やユーザーのアクションで表示を変えたいときなどに有効かと思われます。
成功
可能かと思います。ApolloなどのGraphQLのクライアントを用いる方法と、いわゆるAjax(axios, fetch API, jQuery)でREST APIとしてリクエストを送る方法があると思います。
以下に詳細が書かれているドキュメントを示しますが、特にnodeサーバーなどは立てる必要はないと思います。
=> https://shopify.dev/docs/admin-api/getting-started
特殊な処理を中間で噛ませる場合は必要になるかもしれません。例えばGraphQLで取得したデータを整形してフロントに返却するとか。
ここで注意したいのが、ページを読み込む際に利用するデータをGraphQLから取得するのは避けた方がいいのではないかと思います(ページのレンダリングが遅くなるため)。
Liquidからデータが取得できるものはできるだけLiquidから取得した方がいいという事です。
スクリプトを介してGraphQLへリクエストを送るのは更新処理やユーザーのアクションで表示を変えたいときなどに有効かと思われます。