metarhia / arhaica

Milti-Domain Content Publishing System for Archaic Web
https://metarhia.com
MIT License
32 stars 0 forks source link

Prepare JSTP API examples #2

Closed tshemsedinov closed 6 years ago

tshemsedinov commented 6 years ago

Несколько примеров серверных функций положите плиз сюда и клиентское подключение к ним с примером вызова из браузера.

nechaido commented 6 years ago

Slightly changed examples form JSTP README server:

'use strict';

const jstp = require('metarhia-jstp');

const app = new jstp.Application('testApp', {
  someService: {
    sayHi(connection, name, callback) {
      callback(null, `Hi, ${name}!`);
    }
  }
});

const server = jstp.ws.createServer([app]);
server.listen(3000, () => {
  console.log('WS server listening on port 3000 🚀');
});

client:

import jstp from 'metarhia-jstp';

jstp.ws.connectAndInspect(
  'testApp', null, ['someService'], `ws://localhost:3000`, handleConnect
);

function handleConnect(error, connection, app) {
  if (error) {
    console.error(`Could not connect to the server: ${error}`);
    return;
  }
  app.someService.sayHi('JSTP', (error, message) => {
    if (error) {
      console.error(`Oops, something went wrong: ${error}`);
      return;
    }
    console.log(`Server said "${message}" 😲`);
  });
}
tshemsedinov commented 6 years ago

Я имею в виду, что нужно в код коммитнуть их в рабочем состоянии