我正在尝试在我的Feathersjs/角应用程序中实现Socket.io,并建立了前端和后端之间的通信。
我理解app.js中的配置设置服务器通过WebSockets进行通信,但我不了解如何在通过feathersjs生成的服务中使用它。
如何访问服务中的socket.io配置?
下面是我当前工作的代码:
服务器上的( app.js )
// Set up Plugins and providers
app.configure(express.rest());
app.configure(socketio(function(io) {
io.on('connection', function(socket) {
socket.emit('backend-notification', { text: 'A client connected!' });
socket.on('frontend-notification', function (data) {
console.log(data);
});
});
// Registering Socket.io middleware
io.use(function (socket, next) {
// Exposing a request property to services and hooks
socket.feathers.referrer = socket.request.referrer;
next();
});
}));在app.component.ts的前端
ngOnInit(): void {
const socket = socketIo('http://localhost:3000');
socket.on('backend-notification', (data) => {
console.log(data);
socket.emit('frontend-notification', { text: 'My frontend-notification!' });
});
}发布于 2018-11-06 16:34:48
最常见的方法也是使用客户身上的羽毛,它允许您透明地访问服务器上的服务。通过websocket直接使用服务的方法是记录在Socket.io的直接连接API中。。
ngOnInit(): void {
const socket = socketIo('http://localhost:3000');
socket.on('message create', (message) => {
console.log('New message created', message);
});
socket.emit('create', 'message', {
text: 'This is a new message'
}, (error, message) => {
console.log('New message created via socket', message);
});
}https://stackoverflow.com/questions/52994227
复制相似问题