我正在尝试对 HATEOAS 风格的 REST-api 进行干净的实现。我的服务器端看起来有点像这样(在伪 HTTP 和伪 JSON 中):
GET /api-entry-point
返回(具有正确的 Content-Type 和所有爵士乐):
{
"_links": {
"login": "/login",
"users": "/someapi-part/users",
"orders": "/other-part/orders"
}
}
因此,它是应用程序的单一入口点(_links
符合HAL)。任何类型的客户都会GET /api-entry-point
并且知道在哪里可以找到用户或从那里订购资源。典型的事情是登录,然后检索用户列表。
对于我的 Angular 应用程序,这意味着获取这些链接是第一件事。我使用了一个自定义服务(基于$http
),它返回一个进行 HTTP 调用的承诺。这个承诺需要在应用程序启动时解决一次。我如何确保使用角度发生这种情况?
我已经查看了resolve
属性 (on $routeProvider
),但是让每条路线都依赖于/api-entry-point
.
我也检查过module.run
- 但它也没有解决承诺。
我该如何解决这个问题?有没有办法或者我需要不同的方法/框架?