Как установить базовый путь для API-интерфейсов Sails JS? - PullRequest
0 голосов
/ 12 февраля 2020

Маршруты паруса JS по умолчанию отображаются на / базовый путь.

Например, 'get /user/getUser': 'User.getUser', отображается на /user/getUser/

Теперь я хочу установить базовый путь для конечных точек API, который должен быть динамическим c.

Например, 'get /user/getUser': 'User.getUser' должен соответствовать /api/user/getUser/, тогда как строка /api/ должна быть динамической c.

Я не могу установить это имя ключа динамически, например get ${apiBase}/user/getUser.

Есть ли способ установить базовый путь для API в Sails JS (v1.0.2)

1 Ответ

1 голос
/ 13 февраля 2020

Я думаю, вы можете сделать это, отредактировав файл конфигурации config/blueprints.js. Добавить:

module.exports = {
    // ...
    prefix: '/api',
};

Если у вас иначе включены чертежи, это отобразит все действия контроллера. Действие контроллера User.getUser теперь доступно на {yoururl}/api/user/getUser без дальнейшей настройки маршрутов.

Конечно, если вы переопределите любой из них в файле routes.js, префикс /api не будет автоматически используется.

Тем не менее, я не вижу никаких препятствий для получения и использования этого в вашем файле routes.js:

var prefix = require('./blueprints.js').blueprints.prefix || '/';
module.exports.routes = {
    // ...
    'GET ' + prefix + '/user/getUser/:id': 'UserController.getUser',
};

документы по конфигурации чертежа находятся здесь: https://sailsjs.com/documentation/reference/configuration/sails-config-blueprints

...