Sign Up for Free

RunKit +

Try any Node.js package right in your browser

This is a playground to test code. It runs a full Node.js environment and already has all of npm’s 400,000 packages pre-installed, including apollo-angular-link-persisted with all npm packages installed. Try it out:

require("apollo-link/package.json"); // apollo-link is a peer dependency. var apolloAngularLinkPersisted = require("apollo-angular-link-persisted")

This service is provided by RunKit and is not affiliated with npm, Inc or the package authors.

apollo-angular-link-persisted v1.1.0

Use persisted queries with Apollo Link

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!

RunKit is a free, in-browser JavaScript dev environment for prototyping Node.js code, with every npm package installed. Sign up to share your code.
Sign Up for Free