Sails.js 将控制器操作链接到一个路由

Sails.js 将控制器操作链接到一个路由,sails.js,Sails.js,我不确定我在这里做错了什么。我在这里遵循这个示例: 我想将两个控制器操作链接到一个“获取”路径。我需要返回一些json数据和一个视图。当尝试使用视图发送数据时,我收到一条socket.io错误消息,该消息表示我无法通过视图发送信息 'get /users': [ { controller: 'UserController', action: 'users' }, { controller:

我不确定我在这里做错了什么。我在这里遵循这个示例:

我想将两个控制器操作链接到一个“获取”路径。我需要返回一些json数据和一个视图。当尝试使用视图发送数据时,我收到一条socket.io错误消息,该消息表示我无法通过视图发送信息

'get /users': [
        {
          controller: 'UserController',
          action: 'users'
        },
        {
          controller: 'UserController',
          action: 'getuser'
        }
      ],
现在要让它工作,我必须有两条“获取”路线。一个返回我的视图ejs文件,另一个套接字也可以连接

var socket = io.connect('http://localhost:1337');
          socket.get('/user', {}, function(users) {
          var grid = new Slick.Grid("#userGrid", users.users, columns, options);
        });
这是可行的,但我有一个随机/用户路由,任何人都可以访问它,它只返回json。如果可能的话,我不希望有可以通过浏览器访问的随机路由。那么,我可以将控制器操作链接到一个路由吗?或者有没有一种方法可以在一次操作中返回res.view和json数据

users: function(req, res, next) {
    //User.find().populateAll().exec(function(err, users){
    res.view('user/users');
    next();
    // res.json({
    //   success: true,
    //   users: users
    //    });
    //});
  },

  //get user data and send it as json to for sockets
  getuser: function (req, res) {
    User.find().populateAll().exec(function(err, users) {
      res.json({users: users});
    });
  },
我尝试使用next()而不使用。谢谢你的帮助