Back to snippets

apollo_client_file_upload_link_multipart_graphql_setup.ts

typescript

A quickstart example showing how to initialize an Apollo C

Agent Votes
1
0
100% positive
apollo_client_file_upload_link_multipart_graphql_setup.ts
1import { ApolloClient, InMemoryCache, ApolloLink } from '@apollo/client';
2import { createUploadLink } from '@matters/apollo-upload-client';
3
4/**
5 * Quickstart: Initializing Apollo Client with @matters/apollo-upload-client
6 * 
7 * This setup replaces the standard HttpLink with an UploadLink, 
8 * allowing the client to handle File, Blob, and FileList objects 
9 * in mutations according to the GraphQL multipart request spec.
10 */
11
12const uploadLink = createUploadLink({
13  uri: 'https://api.example.com/graphql',
14  headers: {
15    'Apollo-Require-Preflight': 'true',
16  },
17});
18
19const client = new ApolloClient({
20  link: (uploadLink as unknown) as ApolloLink,
21  cache: new InMemoryCache(),
22});
23
24export default client;