Ember-cli ProxyPass

Ember-cli ProxyPass

我正在使用 ember-cli 开发一个应用程序,它需要使用 ProxyPass 向服务器发送 http 请求。

我的服务器看起来像这样:subdomain.domain.com/api/clients/users 和 Ember-cli 默认创建 http://localhost:4200/

我试图在我的 http.conf 中这样做:

ProxyPass /api/clients http://subdomain.domain.com/api/clients

这对 http://localhost/api/clients 来说工作正常,但我不知道如何让它与非标准端口(如 4200)一起工作。

我也尝试创建一个虚拟主机,但它是一样的:

<VirtualHost *:4200>
    ProxyPass /api/clients http://subdomain.domain.com/api/clients
</VirtualHost>

我该怎么做?

[编辑]: 我这样设置我的 RESTAdapter :

var ApplicationAdapter = DS.RESTAdapter.extend({
    namespace: 'api/clients'
});

在开发过程中,您应该使用 http-proxy 生成器来创建 API 的路径。 ember help generate 列出语法:

http-proxy <local-path> <remote-url>
  Generates a relative proxy to another server.

这会生成一个仅在开发期间(在 /server/proxies/ 中)存在的代理,并且不会在生产版本中编译。根据您在上面提供的内容,这可能是您正在寻找的内容:

ember generate http-proxy api http://subdomain.domain.com

Ember 使用 node-http-proxy 创建代理,因此您可以根据需要使用该文档对其进行更多自定义。