2016-08-02 91 views
1

我正在构建一个微服务,其目标是管理实体数据的特定方面。还有另一个微服务为该实体管理(创建并保存基本数据)。REST使用外部ID创建资源

我希望访问我的新微服务中的实体将使用与其他服务相同的ID完成,以便所有需要访问新服务的其他微服务都可以使用“实体的ID ”。

因此,在我的新服务中创建(或首次设置)资源时,我需要已经收到其“外部ID”。它是“RESTful”(足够)接收该ID作为POST URL的一部分,还是必须忽略ID并将其设置为请求正文的一部分?

例如,我可以用它来创建/首次设置我的服务对象:

POST http://domain:port/resource/:ExternalID 

回答

0

您只需在实体和查找机制引入设定externalId场。在您的服务内部,您仍然可以使用特定于存储的ID。例如,在SCIM中使用此方法。

要找到你的资源:

  • /myresources?externalId=ABC返回集合资源
  • /myresources/search/findByExternalId?externalId=ABC可以返回 单个资源