如何将EmberJS前端与NodeJS Express API连接?

问题描述 投票:0回答:1

我正在开发一个MEEN堆栈(MySQL,EmberJS,Express和NodeJS)项目。 我从来没有和Ember合作过。 我唯一的前端体验是jQuery。

该项目分为多个文件夹,其中前端(Ember)位于一个文件夹中,而Express API位于另一个文件夹中。 前端将处理网页中的加载,同时将请求发送到Express API进行数据库请求/身份验证/其他操作。

我目前能够在网页的静态javascript文件(以及允许CORS和修改app / config中的Ember环境文件)中通过使用jQuery的Ajax方法的显式URL连接两个服务器。

我的困惑是,确实存在将两者连接起来的更优雅的解决方案,但是我对如何做到这一点迷失了。

通过查看教程,我尝试在Ember Front-End app / adapters文件夹中添加一个application.js文件:

import DS from "ember-data";

export default DS.RESTAdapter.extend({
    host: 'http://localhost:9029',
    namespace: 'api'
});

但是我不具备完全实施或测试的知识。 我想念什么? 我如何利用适配器文件?

javascript node.js rest ember.js
1个回答
2
投票

当您开始使用余烬时:

ember server --proxy 'http://localhost:9029'

假设您在使用代理启动ember服务器时,节点服务器正在从http://localhost:9029提供api,则ember-cli将启动一个非常简单的节点代理,该代理将在开发时代理您的请求。

然后,您可以从adapter.js文件中删除主机

import DS from "ember-data";

export default DS.RESTAdapter.extend({
    namespace: 'api'
});

另外,如果您想简洁起见:

ember s -pxy 'http://<YOUR LOCAL SERVER AND PORT>'
© www.soinside.com 2019 - 2024. All rights reserved.