---
title: "Next.js JSSアプリでRESTとGraphQLを切り替えましょう"
slug: "switch-between-rest-and-graphql-in-next-js-jss-apps"
abstract: "JSSアプリでレイアウトデータや辞書データを取得するために使用するサービスやAPIを変更する"
---
# Next.js JSSアプリでRESTとGraphQLを切り替えましょう

JSS Next.jsアプリケーションは、レイアウトや辞書データを取得するために[SitecoreレイアウトサービスREST API](https://doc.sitecore.com/xp/ja/developers/hd/19/sitecore-headless-development/layout-service.html "Layout Service")または[Sitecore GraphQLエッジスキーマ](https://doc.sitecore.com/xp/ja/developers/hd/19/sitecore-headless-development/the-experience-edge-schema.html "The Experience Edge schema") のいずれかを使用できます。

プロジェクト作成後に、アプリケーションがSitecore APIとやり取りするために使うJSSサービスを置き換えることで、データ取得方法を変更することができます。具体的には、[JSSレイアウトAPI](https://doc.sitecore.com/xp/ja/developers/hd/19/sitecore-headless-development/jss-layout-api.html "JSS Layout API")と[JSS GraphQL API](https://doc.sitecore.com/xp/ja/developers/hd/19/sitecore-headless-development/jss-dictionary-api.html "JSS Dictionary API")が提供するRESTサービスとGraphQLサービスの間で切り替える必要があります。

## RESTサービスからGraphQLサービスへの切り替え

Next.jsのサンプルアプリケーションをRESTからGraphQLに切り替えるには:

1.  <src>/lib/dictionary-service-factory.tsを移動または削除して<src>/lib/layout-service-factory.ts。
2.  [dictionary-service-factory.ts](https://github.com/Sitecore/jss/blob/release/19.0.0/samples/nextjs/src/lib/dictionary-service-factory.ts)をダウンロードして[layout-service-factory.ts](https://github.com/Sitecore/jss/blob/release/19.0.0/samples/nextjs/src/lib/layout-service-factory.ts)<src>/lib/。

## GraphQLからRESTサービスへの切り替え

Next.jsのサンプルアプリケーションをGraphQLからRESTに切り替えるには:

1.  <src>/lib/dictionary-service-factory.tsを移動または削除して<src>/lib/layout-service-factory.ts。
2.  [dictionary-service-factory.rest.ts](https://github.com/Sitecore/jss/blob/release/19.0.0/samples/nextjs/src/lib/dictionary-service-factory.rest.ts)をダウンロードして[layout-service-factory.rest.ts](https://github.com/Sitecore/jss/blob/release/19.0.0/samples/nextjs/src/lib/layout-service-factory.rest.ts)<src>/lib/。
3.  それぞれ dictionary-service-factory.ts と layout-service-factory.ts に名前を変更してください。