Экологическое переключение конечных точек в Aurelia-API

У меня есть две конечные точки для aurelia-api, которые зарегистрированы в main.js. Один указывает на мой промежуточный сервер, другой указывает на мой локальный сервер разработки (Kestrel).

Каков рекомендуемый способ регистрации конечных точек или установки конечной точки по умолчанию, чтобы я мог легко переключаться между ними в зависимости от среды?

.plugin('aurelia-api', config => {
  config
   //.registerEndpoint('api', 'http://localhost:5000/api/')      
    .registerEndpoint('api', 'http://server:port/api/')

    .setDefaultEndpoint('api');
})

1 ответ

Решение

Лучший способ настроить что-либо на основе вашей среды - использовать environments папка, которую Aurelia создает при запуске приложения, содержащая dev и prod среда.

dev.ts:

export default {
  debug: true,
  testing: true,
  endpoint: "http://localhost:5000/api"
}

prod.ts

export default {
  debug: false,
  testing: false,
  endpoint: "http://server:port/api/"
}

Они компилируются в файл environment.tsв зависимости от того, работаете ли вы локально или на сервере.

Если вы внедряете среду в свой файл, вы можете использовать любую переменную, указанную в нем, например:

import environment from "./environment";

export function configure(aurelia) {
 aurelia.use
  .plugin('aurelia-api', config => {
  config 
    .registerEndpoint('api', environment.endpoint)

    .setDefaultEndpoint('api');
})
Другие вопросы по тегам