Skip to content
This repository has been archived by the owner on Aug 25, 2024. It is now read-only.

Latest commit

 

History

History
59 lines (48 loc) · 2.15 KB

README.md

File metadata and controls

59 lines (48 loc) · 2.15 KB

Logux Back-end Test

Logux is a new way to connect client and server. Instead of sending HTTP requests (e.g., AJAX and GraphQL) it synchronizes log of operations between client, server, and other clients.

This repository contains test Logux Back-end Protocol implementation.

Usage

  1. Install Node.js 10 or later.

  2. Create a folder inside your project. For instance, test/.

  3. Create package.json in that folder:

    {
      "private": true
    }
  4. Install this package calling the command in test folder:

    npm -i @logux/backend-test
  5. Create test back-end server and implement local.js behaviour:

    • Server subprotocol 1.0.0.
    • Supports client’s subprotocols ^1.0.0.
    • Throws an error during the authentication on headers.errorText.
    • Authenticates users with token USER_ID:good or with cookie token=USER_ID:good.
    • Allows users to subscribe to their own users/USER_ID channel.
    • Throws an error during the subscription on headers.errorText.
    • During the subscription to users/USER_ID channel sends { type: "users/name", payload: { userId, name } } action with the latest user’s name.
    • Re-sends users/name action to users/USER_ID channel.
    • Throws an error during the action access check on headers.errorText.
    • Saves new user’s name on users/name only on bigger action time.
    • Throws an error on error action.
    • On users/clean action set all names to "" and sends users/name action with new name to all clients.
  6. Start your back-end server.

  7. Call npx @logux/backend-test with URL to your back-end server.

    npx @logux/backend-test http://localhost:3000/logux