干净地获取新创建的资源的ID

时间:2015-04-22 10:16:19

标签: javascript hl7-fhir

我最近和FHIR一起玩,但我找不到一种方法来干净地获取新创建的资源的ID,而不是从标题中提取它:

Location: http://fhirtest.uhn.ca/baseDstu2/Practitioner/24796/_history/1 
Content-Location: http://fhirtest.uhn.ca/baseDstu2/Practitioner/24796/_history/1 

这是我的JS代码:

var location_header_split = location_header.split("/")
var id = location_header_split[location_header_split.length-3]

服务器可能无法存储会导致上述操作失败的历史记录。 URL的第一部分(ID之前)也有可能发生变化,因此使用像location_header_split[5]这样的硬编码值并不是一个好主意。我可以添加更多if语句,但是有更清洁的"获取身份证的方式?

1 个答案:

答案 0 :(得分:2)

是的,在DSTU-1(hl7.org/fhir中规范的当前版本)中,这是获取新生成资源的id的唯一方法。

此外,id实际上是base +资源类型+逻辑id。如果您像处理逻辑ID那样隔离逻辑ID,那么在资源类型中可能并不是唯一的,因此您至少应该在内部使用资源类型。

如果服务器不支持历史记录,这只意味着您无法成功获取旧版本,但服务器仍会返回此位置链接 - 有效地让您访问"最新的"版本