在将图片发送到另一台Orthanc服务器之前,我正在尝试匿名。根据有关匿名化的文档,Orthanc可以通过REST:http://book.orthanc-server.com/users/anonymization.html匿名化图像。
Orthanc允许匿名化单个DICOM实例并下载生成的匿名DICOM文件。示例: $
curl http://localhost:8042/instances/6e67da51-d119d6ae-c5667437-87b9a8a5-0f07c49f/anonymize -X POST -d '{}' > Anonymized.dcm
根据Lua脚本的文档页面,Lua脚本可以利用REST:
Lua脚本可以完全访问Orthanc的REST。
该页继续描述如何使用从Lua调用REST:
职能: RestApiGet(uri,builtin) RestApiPost(uri,body,builtin) RestApiPut(uri,body,builtin) RestApiDelete(uri,builtin) uri参数指定发出请求的URI,主体是包含POST/PUT请求体的字符串。
这意味着我应该能够通过组合上面的函数从Lua调用REST。
但是,如文档中所述,当调用RestApiPost时。
instances = RestApiGet(http://localhost:8042/instances, true)我得到以下错误
E0313 17:40:40.851840 LuaScripting.cpp:358] Lua: Badly formatted URI
E0313 17:40:40.851884 LuaScripting.cpp:361] Lua: Error in RestApiPost() for URI: http://localhost:8042/instances/b38a8ef0-909f8ac0-7eca907a-75c98187-8e5339f4/anonymize值得注意的是,我可以从curl和我的浏览器正确地调用这个端点。删除“http://‘”部分不能解决这个问题。
发布于 2019-03-13 21:46:09
RestApiGet函数及其系列期望开发人员在不使用“http://localhost:8042”的情况下格式化uri参数,具体如下:
'/instances'这些函数只适用于使用运行Lua脚本的Orthanc提供的REST,因此它已经知道您将使用本地主机,并且它将自动使用正确的http方案和8042端口。
正如http://book.orthanc-server.com/users/lua.html#general-purpose-functions中所描述的,函数HttpGet(url,headers)及其系列是该函数的一般形式,允许开发人员查询任何http端点。
https://stackoverflow.com/questions/55151673
复制相似问题