0.19.8 • Published 7 years ago

gqlws-server v0.19.8

Weekly downloads
1
License
MIT
Repository
github
Last release
7 years ago

GQLWS Server

GraphQL over WebSockets (Server)

Build Status npm version Coverage Status

:warning: Work In Progress

Install

yarn add gqlws-server

or

npm i gqlws-server --save

Use

const GQLWSServer = require('gqlws-server');

const schema = `
  type Query {
    isPass: Boolean
  }

  type Mutation {
    getProblem: Boolean
  }

  type Subscription {
    testSub(channel: String!): String
  }

  schema {
    query: Query
    mutation: Mutation
    subscription: Subscription
  }
`;

const resolvers = {
  Query: {
    isPass(root, args, connectionData) {
      return true;
    }
  },
  Mutation: {
    getProblem(root, args, connectionData) {
      throw new Error(`Problem for ${connectionData.connectionId}`);
    }
  },
  Subscription: {
    testSub(data) {
      return data;
    }
  }
};

const server = new GQLWSServer({
  schema,
  resolvers,
  port: 8080,
  // server: require('http').createServer(),
  ioOptions: {
    namespace: '/',
    transports: ['websocket']
  }
});

server.run().then(() => {
  console.log('GQLWSServer ready');
});

Connection Events

server.on('connection', connectionData => {
  // let { connectionId, ...customData } = connectionData;
  console.log('open connection', connectionData);
});

server.on('close', connectionData => {
  console.log('close connection', connectionData);
});

Connection Custom Data

server.getData(connectionId); // -> { connectionId }
server.setData(connectionId, 'userId', '14');
server.getData(connectionId, 'userId'); // -> '14'
server.getData(connectionId); // -> { connectionId, userId }
server.delData(connectionId, 'userId');

Publish to subscription

server.publish('testSub', 'somedata', { channel: 'ch1' }, { userId: '14' });

Client

GQLWS Client

0.19.8

7 years ago

0.19.7

7 years ago

0.19.6

7 years ago

0.19.5

7 years ago

0.19.4

7 years ago

0.19.3

7 years ago

0.19.2

7 years ago

0.19.1

7 years ago

0.19.0

7 years ago

0.18.5

7 years ago

0.18.4

7 years ago

0.18.3

7 years ago

0.18.2

7 years ago

0.18.1

7 years ago

0.17.3

7 years ago

0.17.0

7 years ago

0.16.0

7 years ago

0.15.6

7 years ago

0.15.5

7 years ago

0.15.4

7 years ago

0.15.3

7 years ago

0.15.1

7 years ago

0.0.15

7 years ago

0.0.14

7 years ago

0.0.13

7 years ago

0.0.12

7 years ago

0.0.11

7 years ago

0.0.10

7 years ago

0.0.9

7 years ago

0.0.8

7 years ago

0.0.7

7 years ago

0.0.6

7 years ago