GraphQL
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
単語検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
-[[GraphQLの全体像とWebApp開発のこれから:https://qiita.co...
-[[GraphQLが大注目のグラフAPIとは? 「REST API時代終了」...
-[[【技術選定の裏側:GraphQL編 vol.1】読書ログ:https://ze...
-[[GraphQL と Prisma から考える次のN年を見据えた技術選定:...
-[[仕事でバックエンド開発するときに考えていること: 実践編...
-[[API設計が楽でコア業務に集中できるように。GraphQLで開発...
-[[NestJSでスケーラブルなBFFを構築。メルカリShopsエンジニ...
-[[GraphQLはなぜ開発体験が良いのか?モノづくり産業のDXに...
-[[Gaudiyの技術スタックと選定における思想:https://techblo...
-[[GraphQLのアプリケーションへの組み込みを考える:https://...
-[[データ指向アプリケーションデザインから見るGraphQL:http...
-[[GraphQLでバックエンドのコードをすっきりさせた話:https:...
-[[「GraphQL」徹底入門 ─ RESTとの比較、API・フロント双方...
-[[GraphQL入門 - 使いたくなるGraphQL:https://qiita.com/ba...
-[[アプリ開発の流れを変える「GraphQL」はRESTとどう違うの...
-[[GraphQLは何に向いているか:https://k0kubun.hatenablog.c...
-[[初心者目線で分かりやすく解くGraphQLを解説!~同じWebAP...
-[[GraphQL を使うと何が嬉しいのか?いろいろ触って検証して...
-[[NetflixがGraphQLフェデレーションを使用してAPIをスケー...
-[[コンポーネントとGraphQLクエリの管理にFragment Colocact...
-[[作って学ぶGraphQL。gqlgenを用いて鉄道データ検索API開発...
-[[GraphQL Guildのエコシステムって便利だね:https://silver...
-[[React 時代に選ぶ GraphQL:https://oisham.hatenablog.com...
-[[快適にスキーマ駆動開発をするためのGraphQLエラー設計:ht...
-[[GraphQL Inspection で守る GraphQL API:https://engineer...
*概要 [#ibfbdf76]
-クエリ言語を記述することで、クライアント側が欲しいリソー...
-単一のエンドポイントおよびリクエストで複数のリソースを取...
-型定義やクライアント実装の自動生成、クエリを試しに発行で...
*オススメ資料 [#l5ff3075]
-[[Gaudiyのプロダクト戦略とGraphQLの活用:https://techblog...
--[[GraphQLスキーマ設計ガイド 第2版:https://booth.pm/ja/i...
--[[宣言的UIの状態管理とアーキテクチャSwiftUIとGraphQLに...
--[[GraphQLが解決する問題とその先のユースケース:https://z...
--[[GraphQL を利用したアーキテクチャの勘所:https://speake...
-[[GraphQL ベストプラクティス:https://maku.blog/p/4reqy9i...
-[[TypeScript * GraphQLのバックエンド設計プラクティス:htt...
-[[これを読めばGraphQL全体がわかる。GraphQLサーバからDB、...
-[[「GraphQL」徹底入門 ─ RESTとの比較、API・フロント双方...
*API設計 [#o453cf5e]
-[[GraphQL API の設計:https://docs.aws.amazon.com/ja_jp/a...
-[[メルカリShops の技術スタックと、その選定理由:https://e...
**コードファースト or スキーマファースト [#n3238d51]
-[[NestJS でGraphQLバックエンド - コードファーストアプロ...
-[[メルカリShops の技術スタックと、その選定理由:https://e...
GraphQL のスキーマ管理は悩ましい課題ですが、NestJS の Co...
*マイクロサービス [#l598e7cb]
-[[Schema Stitching と Apollo Federation の比較:https://z...
*TypeScript [#e2c9be1a]
-[[TypeScriptのcode-firstなGraphQL開発ツール比較: TypeGra...
**[[urql:https://formidable.com/open-source/urql/]] [#w28...
-[[GraphQLクライアントにurqlをおすすめしたい:https://zenn...
-[[GraphQLライブラリをApollo→Relay→Urqlにハシゴした話:htt...
-[[URQLのExchange Authで認証付きのAPIを呼び出す:https://q...
***Svelte [#l6611520]
--[[Svelte Bindings:https://formidable.com/open-source/ur...
--[[How to build a book review app with Svelte, urql and ...
**[[TypeGraphQL:https://typegraphql.com/]] [#j450d89e]
-[[TypeGraphQLつかってみた:https://zenn.dev/take4s5i/arti...
-[[Typescript + Graphqlを使うならGraphqlはTypeGraphqlがオ...
-[[TypeGraphQLを使用してGraphQLでTypeScriptを使用する:htt...
**[[graphql-code-generator:https://the-guild.dev/graphql/...
-[[GraphQL Code Generatorってどんなコードを生成してくれる...
**Apollo Client [#l2b7933e]
-[[Apollo Client のキャッシュの仕組みとローカルの状態管理...
**Relay [#rba77370]
**Prisma [#o512f21d]
-[[Prismaを使ってサクッとGraphQLのバックエンドを作成する...
*Go [#ba0ca023]
-[[Goで学ぶGraphQLサーバーサイド入門:https://zenn.dev/hsa...
**gqlgen [#o0c550af]
-[[API設計が楽でコア業務に集中できるように。GraphQLで開発...
*PHP [#sd5b85e0]
-[[PHPで使えるGraphQLライブラリの使い勝手あれこれ:https:/...
-[[LaravelでGraphQLを使うために学んだメモ:https://zenn.de...
*[[Apollo GraphQL:https://www.apollographql.com/]] [#f25a...
-[[Next.js + NestJS + GraphQLで変化に追従するフロントエン...
-[[Apollo なら爆速で GraphQL サーバーと GraphQL クライア...
-[[Apolloでの綺麗なAPI実装(GraphQL)を試す:https://qiita...
-[[[GraphQL] TypeScript+VSCode+Apolloで最高のDXを手に入れ...
-[[GraphQL入門 - React.js & Express.js & Apollo の簡単チ...
-[[GraphQL 採用における反省と Apollo Server の運用につい...
*Apollo Studio [#x63574e7]
*Hasura [#e3733e45]
-[[UX改善に集中できるように、GraphQLを中心としたシステム...
-[[Hasuraを使ってReactでTodoアプリをサクッと作ろう Hasura...
-[[Hasuraを使ってReactでTodoアプリをサクッと作ろう React...
-[[Hasuraを使ってReactでTodoアプリをサクッと作ろう 完結編...
*AWS [#k7230112]
-[[AWSでGraphQLサーバーをたてるときの選択肢を比較:https:/...
-[[AWSにおけるAPI開発にてGraphQL(AppSync)とREST API(API G...
-[[AWS AppSync(GraphQL)を用いたバックエンドの構築事例:htt...
-[[AWS AppSync選定を悩んでいる方必見!Graphqlエキスパート...
-[[AppSync VS APIGateway 両者の違いをスタートアップCTOが...
-[[AppSyncでGraphQLへの入門が「easy」になる(前編):https:/...
-[[AppSyncでGraphQLへの入門が「easy」になる(後編):https:/...
-[[AmplifyとGraphQLではじめるサーバレスWebアプリのチーム...
*フロントエンド [#a6b81846]
**Vue [#wf6ad2da]
-[[【爆速】Vite+Vuejs+Amplify+AppSync(GraphQL)でリアルタ...
*バックエンド [#t65bc680]
-[[Prismaを使ってサクッとGraphQLのバックエンドを作成する...
*セキュリティ [#i369c341]
-[[GraphQL診断ガイドライン:https://github.com/WebAppPente...
-[[GraphQLの入門情報とセキュリティ観点で気をつけたいこと:...
-[[GraphQLを導入する時に考えておいたほうが良いこと:https:...
**リスク [#g10cfa06]
-[[GraphQL API を悪意あるクエリから守る手法:https://yigar...
***[[GraphQLによるDoS攻撃:https://github.com/WebAppPentes...
-データを大量に取得するクエリ
-重い計算をさせるクエリ
-大量にDBアクセスを発生させるクエリ
***[[レースコンディション:https://github.com/WebAppPentes...
**対策 [#n1b1e6d8]
***ホワイトリストによる制限 [#ld68101b]
-GraphQL API が受け付けるクエリ一覧をホワイトリストとして...
***クエリのコスト制限 [#ic73adca]
-Query depth
-Query complexity
-Query rate limit
***Introspection query [#qd75962f]
-本番ではOFF
***Field suggestion [#d536d04e]
-本番ではOFF
***スタックトレース [#qcd4b019]
-本番ではOFF
**事例 [#d63afc96]
-[[GraphQL採用サービスで任意カラムを取得できる脆弱性を見...
-[[商品通報対応をgRPCとGraphQLとReactでリプレースしてみた...
-[[複雑で変化の激しい介護業界に立ち向かうアーキテクチャ選...
**診断サービス [#u14b800a]
-[[GraphQL APIを持つWebアプリケーションに対するセキュリテ...
*コマンドラインツール [#y0cae4c9]
**curl [#eef806a9]
curl -X POST -H "Content-Type: application/json" http://...
終了行:
-[[GraphQLの全体像とWebApp開発のこれから:https://qiita.co...
-[[GraphQLが大注目のグラフAPIとは? 「REST API時代終了」...
-[[【技術選定の裏側:GraphQL編 vol.1】読書ログ:https://ze...
-[[GraphQL と Prisma から考える次のN年を見据えた技術選定:...
-[[仕事でバックエンド開発するときに考えていること: 実践編...
-[[API設計が楽でコア業務に集中できるように。GraphQLで開発...
-[[NestJSでスケーラブルなBFFを構築。メルカリShopsエンジニ...
-[[GraphQLはなぜ開発体験が良いのか?モノづくり産業のDXに...
-[[Gaudiyの技術スタックと選定における思想:https://techblo...
-[[GraphQLのアプリケーションへの組み込みを考える:https://...
-[[データ指向アプリケーションデザインから見るGraphQL:http...
-[[GraphQLでバックエンドのコードをすっきりさせた話:https:...
-[[「GraphQL」徹底入門 ─ RESTとの比較、API・フロント双方...
-[[GraphQL入門 - 使いたくなるGraphQL:https://qiita.com/ba...
-[[アプリ開発の流れを変える「GraphQL」はRESTとどう違うの...
-[[GraphQLは何に向いているか:https://k0kubun.hatenablog.c...
-[[初心者目線で分かりやすく解くGraphQLを解説!~同じWebAP...
-[[GraphQL を使うと何が嬉しいのか?いろいろ触って検証して...
-[[NetflixがGraphQLフェデレーションを使用してAPIをスケー...
-[[コンポーネントとGraphQLクエリの管理にFragment Colocact...
-[[作って学ぶGraphQL。gqlgenを用いて鉄道データ検索API開発...
-[[GraphQL Guildのエコシステムって便利だね:https://silver...
-[[React 時代に選ぶ GraphQL:https://oisham.hatenablog.com...
-[[快適にスキーマ駆動開発をするためのGraphQLエラー設計:ht...
-[[GraphQL Inspection で守る GraphQL API:https://engineer...
*概要 [#ibfbdf76]
-クエリ言語を記述することで、クライアント側が欲しいリソー...
-単一のエンドポイントおよびリクエストで複数のリソースを取...
-型定義やクライアント実装の自動生成、クエリを試しに発行で...
*オススメ資料 [#l5ff3075]
-[[Gaudiyのプロダクト戦略とGraphQLの活用:https://techblog...
--[[GraphQLスキーマ設計ガイド 第2版:https://booth.pm/ja/i...
--[[宣言的UIの状態管理とアーキテクチャSwiftUIとGraphQLに...
--[[GraphQLが解決する問題とその先のユースケース:https://z...
--[[GraphQL を利用したアーキテクチャの勘所:https://speake...
-[[GraphQL ベストプラクティス:https://maku.blog/p/4reqy9i...
-[[TypeScript * GraphQLのバックエンド設計プラクティス:htt...
-[[これを読めばGraphQL全体がわかる。GraphQLサーバからDB、...
-[[「GraphQL」徹底入門 ─ RESTとの比較、API・フロント双方...
*API設計 [#o453cf5e]
-[[GraphQL API の設計:https://docs.aws.amazon.com/ja_jp/a...
-[[メルカリShops の技術スタックと、その選定理由:https://e...
**コードファースト or スキーマファースト [#n3238d51]
-[[NestJS でGraphQLバックエンド - コードファーストアプロ...
-[[メルカリShops の技術スタックと、その選定理由:https://e...
GraphQL のスキーマ管理は悩ましい課題ですが、NestJS の Co...
*マイクロサービス [#l598e7cb]
-[[Schema Stitching と Apollo Federation の比較:https://z...
*TypeScript [#e2c9be1a]
-[[TypeScriptのcode-firstなGraphQL開発ツール比較: TypeGra...
**[[urql:https://formidable.com/open-source/urql/]] [#w28...
-[[GraphQLクライアントにurqlをおすすめしたい:https://zenn...
-[[GraphQLライブラリをApollo→Relay→Urqlにハシゴした話:htt...
-[[URQLのExchange Authで認証付きのAPIを呼び出す:https://q...
***Svelte [#l6611520]
--[[Svelte Bindings:https://formidable.com/open-source/ur...
--[[How to build a book review app with Svelte, urql and ...
**[[TypeGraphQL:https://typegraphql.com/]] [#j450d89e]
-[[TypeGraphQLつかってみた:https://zenn.dev/take4s5i/arti...
-[[Typescript + Graphqlを使うならGraphqlはTypeGraphqlがオ...
-[[TypeGraphQLを使用してGraphQLでTypeScriptを使用する:htt...
**[[graphql-code-generator:https://the-guild.dev/graphql/...
-[[GraphQL Code Generatorってどんなコードを生成してくれる...
**Apollo Client [#l2b7933e]
-[[Apollo Client のキャッシュの仕組みとローカルの状態管理...
**Relay [#rba77370]
**Prisma [#o512f21d]
-[[Prismaを使ってサクッとGraphQLのバックエンドを作成する...
*Go [#ba0ca023]
-[[Goで学ぶGraphQLサーバーサイド入門:https://zenn.dev/hsa...
**gqlgen [#o0c550af]
-[[API設計が楽でコア業務に集中できるように。GraphQLで開発...
*PHP [#sd5b85e0]
-[[PHPで使えるGraphQLライブラリの使い勝手あれこれ:https:/...
-[[LaravelでGraphQLを使うために学んだメモ:https://zenn.de...
*[[Apollo GraphQL:https://www.apollographql.com/]] [#f25a...
-[[Next.js + NestJS + GraphQLで変化に追従するフロントエン...
-[[Apollo なら爆速で GraphQL サーバーと GraphQL クライア...
-[[Apolloでの綺麗なAPI実装(GraphQL)を試す:https://qiita...
-[[[GraphQL] TypeScript+VSCode+Apolloで最高のDXを手に入れ...
-[[GraphQL入門 - React.js & Express.js & Apollo の簡単チ...
-[[GraphQL 採用における反省と Apollo Server の運用につい...
*Apollo Studio [#x63574e7]
*Hasura [#e3733e45]
-[[UX改善に集中できるように、GraphQLを中心としたシステム...
-[[Hasuraを使ってReactでTodoアプリをサクッと作ろう Hasura...
-[[Hasuraを使ってReactでTodoアプリをサクッと作ろう React...
-[[Hasuraを使ってReactでTodoアプリをサクッと作ろう 完結編...
*AWS [#k7230112]
-[[AWSでGraphQLサーバーをたてるときの選択肢を比較:https:/...
-[[AWSにおけるAPI開発にてGraphQL(AppSync)とREST API(API G...
-[[AWS AppSync(GraphQL)を用いたバックエンドの構築事例:htt...
-[[AWS AppSync選定を悩んでいる方必見!Graphqlエキスパート...
-[[AppSync VS APIGateway 両者の違いをスタートアップCTOが...
-[[AppSyncでGraphQLへの入門が「easy」になる(前編):https:/...
-[[AppSyncでGraphQLへの入門が「easy」になる(後編):https:/...
-[[AmplifyとGraphQLではじめるサーバレスWebアプリのチーム...
*フロントエンド [#a6b81846]
**Vue [#wf6ad2da]
-[[【爆速】Vite+Vuejs+Amplify+AppSync(GraphQL)でリアルタ...
*バックエンド [#t65bc680]
-[[Prismaを使ってサクッとGraphQLのバックエンドを作成する...
*セキュリティ [#i369c341]
-[[GraphQL診断ガイドライン:https://github.com/WebAppPente...
-[[GraphQLの入門情報とセキュリティ観点で気をつけたいこと:...
-[[GraphQLを導入する時に考えておいたほうが良いこと:https:...
**リスク [#g10cfa06]
-[[GraphQL API を悪意あるクエリから守る手法:https://yigar...
***[[GraphQLによるDoS攻撃:https://github.com/WebAppPentes...
-データを大量に取得するクエリ
-重い計算をさせるクエリ
-大量にDBアクセスを発生させるクエリ
***[[レースコンディション:https://github.com/WebAppPentes...
**対策 [#n1b1e6d8]
***ホワイトリストによる制限 [#ld68101b]
-GraphQL API が受け付けるクエリ一覧をホワイトリストとして...
***クエリのコスト制限 [#ic73adca]
-Query depth
-Query complexity
-Query rate limit
***Introspection query [#qd75962f]
-本番ではOFF
***Field suggestion [#d536d04e]
-本番ではOFF
***スタックトレース [#qcd4b019]
-本番ではOFF
**事例 [#d63afc96]
-[[GraphQL採用サービスで任意カラムを取得できる脆弱性を見...
-[[商品通報対応をgRPCとGraphQLとReactでリプレースしてみた...
-[[複雑で変化の激しい介護業界に立ち向かうアーキテクチャ選...
**診断サービス [#u14b800a]
-[[GraphQL APIを持つWebアプリケーションに対するセキュリテ...
*コマンドラインツール [#y0cae4c9]
**curl [#eef806a9]
curl -X POST -H "Content-Type: application/json" http://...
ページ名: