1. Гость, мы просим Вас ознакомиться с Правилами Форума и Отказом от ответственности!

Результаты поиска

  1. salitypw
  2. salitypw
  3. salitypw
  4. salitypw
  5. salitypw
  6. salitypw
  7. salitypw
  8. salitypw
  9. salitypw
  10. salitypw
  11. salitypw
  12. salitypw
  13. salitypw
  14. salitypw
    Монополисты же)
    Сообщение от: salitypw, 30 июл 2018 в разделе: Оффтоп
  15. salitypw
  16. salitypw
  17. salitypw
  18. salitypw
    Achtung!!! Не является готовым решением, это всего лишь набор инструментов для разработчиков. TCP Network Toolkit - набор говнокода инструментов для Node.js, который являет собой "скелет" для построения приложений работающих с сетью. Особой полезностью для PW не отличается, может пригодиться для тех, кто решил немного упороться и переписать некоторые не очень объемные (в плане времени на разработку) игровые сервисы с нуля. Использовать на свой страх и риск. Сорцы - https://github.com/mvcbox/node-tcp-network-toolkit P. S. Документацию набросаю на досуге, пока что только примеры использования: Сервер: 'use strict'; const net = require('net'); const { BaseProtocol, NetworkBuffer, hydratorFactory, packetRouterFactory, packetParserStreamFactory } = require('tcp-network-toolkit'); /* ------------------------------------------------------------------------------------------------------------------ */ // Some packet /** * @property {number} someProperty */ class SomePacket extends BaseProtocol { /** * @param {NetworkBuffer|Buffer|Object} buffer */ constructor(buffer) { super(buffer || { someProperty: 0 // Default value }); } /** * @returns {number} * @private */ static get _opcode() { return 1; } /** * @returns {NetworkBuffer} * @private */ _marshal() { let buffer = this._makeBuffer(4); buffer.writeInt32BE(this.someProperty); return buffer; } /** * @param {NetworkBuffer} buffer * @private */ _unmarshal(buffer) { this.someProperty = buffer.readInt32BE(); } } /* ------------------------------------------------------------------------------------------------------------------ */ // Packet routes const router = packetRouterFactory(); // Add middleware router.use(function (packet, client, next) { console.log('Middleware 1:', packet); next(); }); // Add route router.use(1, function (packet, client, next) { console.log('Route 1:', packet); packet.someProperty = 123; client.write(packet._buildPacket().buffer); next(); }); // Add route router.use(5, function (packet, client, next) { console.log('Route 5:', packet); next(); }); // Add route router.use([1, 2, 3], function (packet, client, next) { console.log('Route [1, 2, 3]:', packet); packet.someProperty = 456; client.write(packet._buildPacket().buffer); next(); }); // Add middleware router.use(function (packet, client, next) { console.log('Middleware 2:', packet); next(); }); /* ------------------------------------------------------------------------------------------------------------------ */ // Create hydrator const hydrator = hydratorFactory([ SomePacket ]); /* ------------------------------------------------------------------------------------------------------------------ */ // TCP Server net.createServer(function (client) { client.pipe(packetParserStreamFactory(hydrator)).pipe(router.stream(client)); }).listen(3000);
    Автор темы: salitypw, 7 июл 2018, ответов - 2, в разделе: PW Разработки
  19. salitypw
  20. salitypw