根据依赖关系创建路由

时间:2013-11-05 14:46:00

标签: servicestack restangular

我正在创建一个REST服务,例如客户供应商,并且每个服务都有关联的联系人

我希望能够路由到:

  • /联系人
  • /联系人/ {ID}
  • /供应商/供应商ID {} /联系人
  • /供应商/供应商ID {} /联系人/ {ID}
  • /客户/ {客户ID} /联系人
  • /客户/ {客户ID} /联系人/ {ID}

我知道我可以轻松添加:

[Route("/contacts", "GET")]
[Route("/contacts/{id}", "GET")]
[Route("/{Entity}/{EntityId}/contacts", "GET")]
[Route("/{Entity}/{EntityId}/contacts/{id}", "GET")]
Class ContactsRequest :IReturn<ContactsResponse>{
...
}

但我希望能够使用我的通讯录服务,它可能位于“更深层次”路线的末端,例如:

  • /销售/动态/ {leadId} /参照网址/客户/ {客户ID} /联系人
  • /销售/动态/ {leadId} /参照网址/客户/ {客户ID} /联系人/ {ID}

我正在计划使用这个带有restangular的API,我希望能够从应用程序的任何位置向下钻取api。有什么建议?

1 个答案:

答案 0 :(得分:1)

阅读后:http://info.apigee.com/Portals/62317/docs/web%20api.pdf

  

现在,关系可能很复杂。业主与兽医有关系   与狗有关系,与食物有关系,等等。不是   不常见的人将这些字符串串在一起,形成一个5或6级的URL。记得   一旦你有一个级别的主键,你通常不需要包括   因为你已经拥有了你的特定对象。换句话说,你不应该   需要太多的情况,其中URL比我们上面的更深   /资源/标识符/资源。

基本上我所追求的设计是不好的做法......

相关问题