Angularjs 针对不同用户的SocketIO syncUpdate模型
我一直在写一个网络应用,每个用户都会发布他们的任务,并显示在他们的新闻提要上。我使用了yeoman的socket io和angular fullstack框架 我试图做的是,当用户向目标模型添加新数据时,在socketSyncUpadtes上,$rootScope.getUserGoals得到更新,用户看到新条目。但我希望每个用户都能这样做,这就是为什么我要包括userid,以确保它只提取特定于用户的数据 但实际上发生的是,所有连接的用户都得到了这个套接字流并更新了他们的模型,但当页面刷新时,它总是只会被查询提取,只会被用户指定的数据 这就是我获取用户特定数据的方式Angularjs 针对不同用户的SocketIO syncUpdate模型,angularjs,node.js,websocket,socket.io,yeoman-generator-angular,Angularjs,Node.js,Websocket,Socket.io,Yeoman Generator Angular,我一直在写一个网络应用,每个用户都会发布他们的任务,并显示在他们的新闻提要上。我使用了yeoman的socket io和angular fullstack框架 我试图做的是,当用户向目标模型添加新数据时,在socketSyncUpadtes上,$rootScope.getUserGoals得到更新,用户看到新条目。但我希望每个用户都能这样做,这就是为什么我要包括userid,以确保它只提取特定于用户的数据 但实际上发生的是,所有连接的用户都得到了这个套接字流并更新了他们的模型,但当页面刷新时,它
$rootScope.getUserGoals = function (userid){
//get current todo task views
$http.get('/api/goals/name/'+userid).success(function(goals) {
$rootScope.userGoalArr = goals;
socket.syncUpdates('goal', $rootScope.userGoalArr);
});
};
然后,它将显示在视图中,并显示此
<ul class = "holdTaskul" ng-repeat="view in filtered = userGoalArr | orderBy:'-created'">
我还配置了套接字,用于通过此端口发送身份验证令牌
// socket.io now auto-configures its connection when we ommit a connection url
var ioSocket = io('', {
// Send auth token on connection, you will need to DI the Auth service above
query: 'token=' + Auth.getToken(),
path: '/socket.io-client'
});
并使用socketio jwt将秘密会话发送到socket服务
module.exports = function (socketio) {
socketio.use(require('socketio-jwt').authorize({
secret: config.secrets.session,
handshake: true
}));
module.exports = function (socketio) {
socketio.use(require('socketio-jwt').authorize({
secret: config.secrets.session,
handshake: true
}));