代理ember cli到生产中的api主机不工作

时间:2014-12-16 12:02:02

标签: ruby-on-rails heroku ember.js proxy ember-cli

我目前正在使用ember cli 0.1.3作为前端,rails 4.1.8作为后端。我使用ember-simple-auth对用户进行身份验证,然后我按https://github.com/givanse/ember-cli-simple-auth-devise进行了设置。

它在本地运行良好,但使用ember server --proxy http://0.0.0.0:3000,但我似乎无法为生产环境设置代理。

我在Heroku上托管了ember和rails应用程序。我发现有一个用于Ember CLI的代理生成器,因此我使用了ember g http-proxy users http://"url"

这创建了servers/proxies/http:/url.js

var proxyPath = '/users';

module.exports = function(app) {
  // For options, see:
  // https://github.com/nodejitsu/node-http-proxy
  var proxy = require('http-proxy').createProxyServer({});
  var path = require('path');

  app.use(proxyPath, function(req, res, next){
    // include root path in proxied request
    req.url = path.join(proxyPath, req.url);
    proxy.web(req, res, { target: 'http://url' });
  });
};

现在一旦推到heroku,xhr request仍指向Ember主持人。

1 个答案:

答案 0 :(得分:1)

好吧事实证明我认为太复杂了我所要做的就是将整个网址添加到端点。

配置/ environment.js

ENV['simple-auth-devise'] = {
      serverTokenEndpoint:  'http://url/users/sign_in',
      crossOriginWhitelist: ['http://url/']
    };