🪟 Windows TippsThe Gemini desktop app is now available for Windows(11.09.2026 um 17:06 Uhr)
🕵️ SicherheitslückenBurn Out, Or Fade Away(14.09.2026 um 14:25 Uhr)
⚠️ Malware / Trojaner / VirenWindows 11 just dropped the tool ransomware abused, Microsoft says don’t restore WMIC(10.09.2026 um 20:11 Uhr)
⚠️ Malware / Trojaner / VirenWindows 11: Microsoft entfernt WMIC-Tool gegen Ransomware - ad-hoc-news.de(14.09.2026 um 07:58 Uhr)
🕵️ SicherheitslückenMicrosoft schließt Rekordzahl an Sicherheitslücken - techbook(14.09.2026 um 09:00 Uhr)
🪟 Windows TippsThe Gemini desktop app is now available for Windows(11.09.2026 um 17:06 Uhr)
🕵️ SicherheitslückenBurn Out, Or Fade Away(14.09.2026 um 14:25 Uhr)
⚠️ Malware / Trojaner / VirenWindows 11 just dropped the tool ransomware abused, Microsoft says don’t restore WMIC(10.09.2026 um 20:11 Uhr)
⚠️ Malware / Trojaner / VirenWindows 11: Microsoft entfernt WMIC-Tool gegen Ransomware - ad-hoc-news.de(14.09.2026 um 07:58 Uhr)
🕵️ SicherheitslückenMicrosoft schließt Rekordzahl an Sicherheitslücken - techbook(14.09.2026 um 09:00 Uhr)

🔧 Programmierung 🕛 vor 1 Jahr 3 Min Lesezeit
0

Setup GraphQL Mock Server

↗ Quelle (dev.to)
🗣️ Stimme:
📑 Inhaltsübersicht




Introduction



This tutorial will guide you through creating a GraphQL mock server for your JavaScript application. A mock server is invaluable for local development, enabling seamless testing when the backend is unavailable or while running E2E tests.






Prerequisites



Before proceeding, ensure the following tools are installed on your system:




  • Node.js

  • npm/yarn/pnpm






Step-by-step Guide






1. Install Dependencies



Begin by installing the necessary dependencies with npm or yarn:




CODE
npm install --save-dev graphql graphql-tag graphql-tools @apollo/server node-fetch









2. Setup Project Structure



Set up your project directory as follows:




CODE
/graphql-mock-server
|-- localSchema.ts
|-- schema.graphql
|-- server.ts









3. Local Schema



Define your local schema in localSchema.ts. This schema will override remote schema definitions for specific queries or mutations. Provide resolvers to return predefined mock data.




CODE
// filepath: /graphql-mock-server/localSchema.ts
import { makeExecutableSchema } from '@graphql-tool/schema'
import { gql } from 'graphql-tag'

const typeDefs = gql`
type Query {
myQuery: String
}
`
;

const resolvers = {
Query: {
myQuery: () => 'This is mock data'
},
};

export const localSchema = makeExecutableSchema({typeDefs, resolvers});









4. Remote Schema



The remote schema is loaded from the local file schema.graphql. This file should include the schema definition, which can be exported from your GraphQL playground.




CODE
// filepath: /graphql-mock-server/schema.graphql
type Query {
myQuery: String
}









5. Mock Server Implementation



The mock server stitches the local and remote schemas, giving precedence to the local schema-specified queries or mutations.




CODE
// filepath: /graphql-mock-server/server.ts
import { ApolloServer } from '@apollo/server';
import { startStandaloneServer } from '@apollo/server/standalone';
import { stitchSchema } from '@graphql-tools/stitch';
import { loadSchemaSync } from '@graphql-tools/load';
import { GraphQLFileLoader } from '@graphql-tools/graphql-file-loader';
import { localSchema } from './localSchema';
import { wrapSchema } from '@graphql-tools/wrap';
import { print } from 'graphql';
import fetch from 'node-fetch';

async function startServer(){
const remoteSchema = loadSchemaSync('graphql-mock-server/schema.graphql',{
loaders: [new GraphQLFileLoader()],
});

const executableRemoteSchema = wrapSchema({
schema: remoteSchema,
executor: async ({ document, variables }) => {
const query = print(document);
const fetchResult = await fetch(
'https://graphql.server.com/graphql',
{
method: 'POST',
headers: { 'Content-Type': 'application/json'},
body: JSON.stringify({ query, variables}),
},
);
return fetchResult.json();
},
});

const schema = stitchSchema ({
subschema: [
{ schema: executableRemoteSchema },
{ schema: localSchema },
merge: {
myQuery: { //override the Query/Mutation here
selectionSet: '{ __typename }',
resolve: (parent, args, context, info) => {
return localSchema
.getQueryType()
?.getFields()
.myQuery.resolve(parent, args, context, info);
},
},
},
},
},
],
});

const server = ApolloServer({ schema });
const {url } = await startStandaloneServer( server, {
listen: { port: 4000},
});

console.log(`🚀 Server ready at ${url}`);
}

startServer();








If you have reached here, then I made a satisfactory effort to keep you reading. Please be kind enough to leave any comments or share corrections.







My Other Blogs:



Vollständiger Original-Bericht
Ausführliche Details, Code-Beispiele & Hersteller-Stellungnahme auf dev.to.
↗ Original-Artikel auf dev.to lesen
Wie bewertest du diesen Beitrag?
1 Klick Feedback
Teilen mit Netzwerk & Team:

Community-Analysen & Experten-Meinungen 0

Verfasse deine eigene Analyse, teile Workarounds oder diskutiere diesen Vorfall im Blog.
Noch keine Community-Analyse verfasst. Markiere einen Textabschnitt oder klicke oben auf Eigene Analyse verfassen“!
Community Pulse: Relevanz-Einschätzung
1 Klick Experten-Votum
🔴 Akute Relevanz 0%
🟡 In Evaluierung 0%
🟢 Keine Auswirkung 0%
Spannende Innovation 0%
Verwandte Story-Cluster & Quellen (Vektor-KI)
Port 8095 Engine
1 Quelle
The Gemini desktop app is now available for Windows
1 Quelle
Burn Out, Or Fade Away
1 Quelle
Windows 11 just dropped the tool ransomware abused, Microsoft says don’t restore WMIC
Ähnliche Beiträge
🔍 Verwandte News

Auch interessante Nachrichten Setup GraphQL Mock Server

Thematisch verwandte Begriffe: Setup, GraphQL, Mock, Server · 6 Treffer

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...

Laden...

Beiträge werden geladen ...

Laden...

Videos werden geladen ...