gravit-api

1.1.0-release • Public • Published

GravitAPI

npm GitHub license GitHub issues PRs Welcome

Реализация JS API для GravitLauncher

Установка

Используя npm:

npm i gravit-api

Используя jsDelivr CDN:

<script src="https://cdn.jsdelivr.net/npm/gravit-api/dist/gravit-api.min.js"></script>

Используя unpkg CDN:

<script src="https://unpkg.com/gravit-api/dist/gravit-api.min.js"></script>

Пример использования

// Подключение класса API
const GravitApi = require('gravit-api');
 
// Данные для запроса
const wsUrl = 'ws://localhost:9274/api';
const userdata = {
    login: 'test',
    password: 'test'
};
 
// Инициализация класса API
const api = new GravitApi();
 
// Подключение и отправка/обработка запросов с использованием Promise
 
api.connect(wsUrl) // Подключение к сокету лаунчсервера
.then(() => {
    api.send('getAvailabilityAuth').then(auth => { //Запрос списка методов авторизации
        console.log(auth.list);
        api.close(); // Закрытие соединения
    }).catch(console.error);
}).catch(console.error);
 
// или в стиле async/await
 
(async () => {
    try {
        await api.connect(wsUrl);
        const auth = await api.send('getAvailabilityAuth');
        console.log(auth.list);
    } catch (error) {
        console.error(error);
    } finally {
        api.close();
    }
})();

Более подробные примеры использования можно найти здесь

Методы и параметры

Класс GravitApi содержит следущее:

Свойство:

  • requestMap - коллекция с обработчиками ответов от лаунчсервера добавляемыми функцией send

Методы:

  • connect(url) - подключение к сокету лаунчсервера, где:
    • url - адрес сокета лаунчсервера
  • close() - отключение от сокета лаунчсервера
  • send(type, obj) - отправка запроса к лаунчсерверу, где:
    • type - тип запроса
    • obj - объект с параметрами запроса
  • getUUIDv4() - генерация случайного UUID для запроса, используется в sendRequest

Эвенты (стандартные эвенты вебсокета):

  • onOpen() - обработчик эвента onopen
  • onClose() - обработчик эвента onclose
  • onMessage() - обработчик эвента onmessage
  • onError() - обработчик эвента onerror

Readme

Keywords

Package Sidebar

Install

npm i gravit-api

Weekly Downloads

17

Version

1.1.0-release

License

MIT

Unpacked Size

49.8 kB

Total Files

9

Last publish

Collaborators

  • jocat
  • gravita