Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/xml/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 干净地获取新创建的资源的ID_Javascript_Hl7 Fhir - Fatal编程技术网

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

Javascript 干净地获取新创建的资源的ID,javascript,hl7-fhir,Javascript,Hl7 Fhir,我最近一直在玩弄FHIR,但除了从标头中提取新创建资源的ID外,我找不到一种干净的方法来获取该资源的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 = l

我最近一直在玩弄FHIR,但除了从标头中提取新创建资源的ID外,我找不到一种干净的方法来获取该资源的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\u header\u split[5]
不是一个好主意。我可以添加更多的
if
语句,但是是否有一种“更干净”的方法来获取ID?

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

此外,id实际上是基+资源类型+逻辑id。如果像您一样隔离逻辑id,这可能在所有资源类型中都不是唯一的,因此您至少应该在内部为id使用资源类型

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