ember.js - 在 Ember-Cli 中配置服务器和客户端端口

标签 ember.js ember-data ember-cli

我正在使用 Ember-Cli 制作一个 Ember 应用程序,它与服务器端应用程序进行通信。由于 Ember-Cli 项目使用自己的服务器(默认在端口 4200 上)运行,因此我必须在与 Ember 应用程序不同的端口 (localhost:8080) 上运行开发中的服务器。然而,在生产中,两者将在同一端口上运行。

问题:如何配置 Ember(我猜是在 config/environment.js 中),以便在开发中向 localhost:8080 发出 Ember-Data 和所有 ajax 请求(尽管 Ember 应用程序正在运行)在 4200 上),并且在生产中,Ember-Data 和 ajax 请求将查询服务器端应用程序运行的任何端口(将托管客户端应用程序)。

Ember-Cli docs提到可以完成一些配置(例如,您可以更改 Ember-Cli 运行的端口),但是,它没有说明如何完成上述操作

最佳答案

您只是希望 ember 根据环境为您的 API 使用不同的端口?听起来您需要让应用程序适配器从环境文件中获取一个值

//environment.js
var ENV = {
  ...
  apiHost: 'https://path-to-production-api.com',
  ...
}

if (environment === 'development') {
   ENV.apiHost: 'http://localhost:8080'
}
ENV.contentSecurityPolicy['connect-src'] += ' ' + ENV.apiHost;

//adapters/application.js
import DS from 'ember-data';
import ENV from 'portal/config/environment';
export default DS.RESTAdapter.extend({
   host: ENV.apiHost
});

关于ember.js - 在 Ember-Cli 中配置服务器和客户端端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30517441/

相关文章:

javascript - 如果 json 中的图像模型为空,Ember cli 会替换图像标准

javascript - emberjs 拆分 Promise 数组

ember.js - 在 emberjs 中使用页面部分作为路由

ember.js - 返回带有 ember-data find() 和多个参数的单个记录

ember.js - Emberjs - 如何访问 RC1 中的当前状态或路线名称?

ember.js - 不正常 1 PhantomJS 在 CI 上运行 `ember test` 时意外退出

ember.js - Ember 数据剩余适配器错误处理不起作用

javascript - 如何计算父路由模型的项目数以在嵌套路由中使用它?

ember.js - 在emberjs中获得模型的第一条记录

javascript - ember-cli 未关闭的元素 `d.y` 导致 ember 应用程序崩溃