node.js - 我可以从命令行运行 sailsjs Controller 方法吗?

标签 node.js sails.js

我正在使用 Sailsjs 编写一个应用程序,其中包含一个刮刀。目前,我正在使用默认路由从浏览器调用抓取功能,但我认为如果我可以从终端私下调用所需的方法会更好。可以这样做吗?

最佳答案

您可以使用 Sails 控制台访问 Controller 方法,但您必须提供虚假的 reqres 对象作为参数,或者创建不支持的 Controller 函数不需要 reqres,这不是一个好的做法。更好的方法是将抓取代码移至 service ,这是 Sails 在全局范围内为您提供的库。例如,如果您有一个文件 /api/services/ScraperService.js ,其中包含:

module.exports = {

   scrape: function (url, fileToSaveResultsTo) {
      // do scraping and save to file
   }

}

然后您可以在 Sails 控制台中的 Controller 中调用该服务:

ScraperService.scrape("http://google.com", "results.txt");

使用 sails console 在终端中启动控制台。

关于node.js - 我可以从命令行运行 sailsjs Controller 方法吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23065973/

相关文章:

node.js - 将选项与 Node 的作用域 http 客户端一起使用,将rejectUnauthorized 设置为 false

javascript - 2 一种更新方法以交换日期 NodeJS、Mongoose+mongoDB

javascript - Passport.js session 自行失效

node.js - 如果没有硬刷新,Sails 不会清除缓存

node.js - 启动 node.js,得到令人困惑的结果

node.js - 与 MongoDB 而不是 Redis 一起使用的 Kue 有什么好的替代品?

node.js - mongodb中如何循环遍历数组?

socket.io - 如何在sails.js 中禁用socket.io?

gruntjs - 使用 --no-frontend 提升时出现 Grunt 错误 SailsJS

javascript - sails +布伦特里 : Unable to send the transactions details to client