apollo-angular-link-persisted

Use persisted queries with Apollo Link

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
apollo-angular-link-persisted
1,433441.3.03 years ago5 years agoMinified + gzip package size for apollo-angular-link-persisted in KB

Readme

Automatic Persisted Queries
npm version Get on Slack

Purpose

An Apollo Link that allows to use Automatic Persisted Queries with apollo-angular-link-http.
Read more about Automatic Persisted Queries.

How it works

  1. When the client makes a query, it will optimistically send a short (64-byte) cryptographic hash instead of the full query text.
  2. If the backend recognizes the hash, it will retrieve the full text of the query and execute it.
  3. If the backend doesn't recogize the hash, it will ask the client to send the hash and the query text to it can store them mapped together for future lookups. During this request, the backend will also fulfill the data request.

Installation

npm install apollo-angular-link-persisted --save

Usage

Use createPersistedQueryLink function and put it before HttpLink in the link chain.
import {HttpLinkModule, HttpLink} from 'apollo-angular-link-http'; // or batch link
import {createPersistedQueryLink} from 'apollo-angular-link-persisted';

@NgModule({
  imports: [HttpLinkModule],
})
class AppModule {
  constructor(httpLink: HttpLink) {
    const link = createPersistedQueryLink().concat(
      httpLink.create({uri: '/graphql'}),
    );
  }
}

More

This library is just a simple wrapper of apollo-link-persisted-queries to make it work in Angular with apollo-angular-link-http (also with batch link). Thanks to that you can use any options, any functionality that the original package provides.
You're curious how to use it with Apollo Engine? What are the available options and how Automatic Persisted Queries works?
Visit apollo-link-persisted-queries repository!