假设我们有一个Angular网络应用程序列出患者,路线就像 http://localhost:4200/patients
.
有没有办法通过调用 http://localhost:4200/server/api/patients
以JSON格式(application / json)提供相同的内容(来自完全相同的数据源)?
换句话说,我想用Angular构建一个REST API endpoints .
EDIT: 我的目标是为外部系统提供一种在 生产环境 环境中访问实际数据的方法 .
3 回答
如果你想在前面添加一些像'server / api /'这样的字符串,你可以使用environtment来做到这一点 .
这是你需要的吗?
编辑后:
是的你可以 . 当您为应用程序提供服务时,这在 生产环境 模式下可用 .
这不是Angular问题,而是服务器问题:您的服务器必须
提供内置的Angular应用程序
提供REST API .
这在很大程度上取决于您的服务器,因此您应该将服务器作为标记提出新问题,并询问如何将其设置为一次为多个应用程序提供服务 .
我必须说出来,因为很多人都没有得到它,但是 Angular isn't made to create REST APIs . 您将使用您想要的任何其他内容构建您的API(并且可以执行此操作),您只需在同一个域上提供它 .
这是不可能的,因为角度中的根组件和子组件使用视图模板进行渲染,最终是html,Angular是javascript MVC框架 . 因此,最终通过将Web Service Api调用填充到某个组件中来获得每个数据角度 . 所以最终你将从angular回来的mime类型是text / html .
Angular is not build for developing Rest Api . 如果您只想在javascript中编码,可以将Node.js用于此目的 .
请点击此链接以了解node.js中可用的框架
Node js Rest Api frameworks