我正在尝试从DICOM服务器加载DICOM。使用URL加载单个文件工作正常。 现在我想加载一整套DICOM数据。我从服务器获取数据,并将HTTP请求作为zip存档。
我尝试使用zip.js库解压缩响应并将解压缩的文本传递给loader.parse函数,以加载DICOM,如示例“viewers_upload”中所示。但是我得到了无法解析文件的错误。
有没有办法在没有URL的情况下加载数据?或者我如何修改示例以使其适用于zip存档?
这是解压缩文件并将其传递给解析器的代码:
reader.getEntries(function(entries) {
if (entries.length) {
//getting one entry from the zipfile
entries[0].getData(new zip.ArrayBufferWriter(), function (dicom) {
loader.parse({url: "dicomName", dicom});
} , function (current, total) {
});
}
错误信息是:
“dicomParser.readFixedString:尝试读取缓冲区的过去结束”
“uncaught(在promise中)parsers.dicom无法解析文件”
我认为问题可能在于zipfile的返回数据类型?我必须将哪种类型传递给解析函数?解析器中的数据结构必须如何?解析器期望缓冲区的长度是多少?