Отключите некоторые встроенные функции в Sails.js

Я разрабатываю backend-приложение REST API, используя Sails.js 0.10 как структуру. Это приложение будет строго REST, аутентификация будет реализована с использованием токенов-носителей oAuth. Все ответы будут в формате JSON.

Учитывая эти специфические требования, мне не нужна некоторая функциональность, встроенная в Sails.js, и я хочу удалить ее из своего приложения (так что она будет работать быстрее без постороннего кода).

Итак, мой вопрос: как отключить следующие встроенные функции?

  • светокопий
  • Static
  • Cookies
  • Сессия
  • представления
  • WebSocket
  • CSRF
  • i18n

Что еще можно отключить, что не требуется в моем случае?

Документация фрагментирована по этому конкретному вопросу. Все параметры конфигурации описаны для каждого модуля, но нет информации о том, как такой модуль можно отключить и/или удалить из приложения.

Ответ 1

рунета! Вам нужно отключить несколько перехватчиков, а также некоторое промежуточное ПО. Во-первых, в вашем файле .sailsrc установите:

"hooks": {
  "session": false,
  "sockets": false,
  "pubsub": false,
  "views": false,
  "csrf": false,
  "i18n": false,
  "blueprints": false
}

Затем в config/https.js:

middleware: {
  order: [
    'startRequestTimer',
    // 'cookieParser',
    // 'session',
    'bodyParser',
    'handleBodyParserError',
    'compress',
    'methodOverride',
    'poweredBy',
    '$custom',
    'router',
    // 'www',
    // 'favicon',
    '404',
    '500'      
  ]
}

Это должно помочь вам.