{
"/api": {
"target": "http://localhost:8888",
"secure": false
}
}
"start": "ng serve --proxy-config proxy.conf.json"
static
ничего не даст, т.к. такого исполняемого файла нет в папках, указаных в PATHnpx static
или ./node_modules/.bin/static
, в текущей папке разумеется.const EventEmitter = require('events');
const pubsub = new EventEmitter();
wss.on('connection', ws => {
pubsub.on('test', (payload, _ws) => {
if (_ws !== ws) {
return;
}
ws.send(payload);
});
ws.on('message', message => {
const { event, payload } = message;
pubsub.emit(event, payload, ws);
});
})
const EventEmitter = require('events');
const pubsub = new EventEmitter();
wss.on('connection', ws => {
ws.on('message', message => {
const { event, payload } = message;
pubsub.emit(event, payload, ws);
});
});
pubsub.on('test', (payload, _ws) => {
_ws.send(payload);
});
const EventEmitter = require('events');
const pubsub = new EventEmitter();
wss.on('connection', ws => {
ws.on('message', message => {
const { event, payload } = message;
pubsub.emit(event, { payload, ws });
});
});
pubsub.on('test', ({ payload, ws }) => {
ws.send(payload);
});
const EventEmitter = require('events');
const pubsub = new EventEmitter();
wss.on('connection', ws => {
ws.on('message', message => {
const { event, payload } = message;
pubsub.emit(event, payload, outcome => ws.send(outcome));
});
});
pubsub.on('test', (payload, send) => {
send(payload);
});
http-server
- просто http сервер, минимум лишнего. Берет файлы и отправляет их по запросу браузера. Аналог apache, nginx, просто упрощенные, на ноде. Удобен чтобы быстро открыть содержимое папки в браузере.live-server
, lite-server
релоадят страничку, если изменились файлы. Сервер инжектит свой скрипт, который поднимает вебсокет соединение с сервером, что позволяет серверу отдать команду страничке на релоад.webpack-dev-server
- вебпак собирает код из исходников в оперативе, дальше все тоже самое что у предыдущих двух. Встроен в Ангуляр и запускается командой ng serve
var db = require('../config/config.js');
var node_acl = require('acl');
var acl = new node_acl( new node_acl.mongodbBackend(db.freshConnect, 'acl_') );
router.use('/crm', checkForPermissions, crmRouter);
function checkForPermissions(req, res, next) {
console.log('Я работаю')
const userId = getUserId(req);
acl.middleware(2, userId)(req, res, next);
}
function getUserId(req) {
if (req.user) {
return req.session.passport.user;
}
}