我正在使用nodejs创建一个非常简单的DICOM ECHO服务器,但是我面临一个问题,即客户端总是无法连接而响应,我不确定自己缺少什么,这里有人在编写DICOM ECHO服务器方面有经验吗?
这是我的代码
var net = require('net');
net.createServer(function(socket){
socket.on('data', function(data){
datat = String.fromCharCode.apply(null, new Uint16Array(data));
console.log(datat);
socket.write(data);
socket.end()
});
socket.on('error', function(error){
console.log("Caught server socket error: ")
console.log(error.stack)
console.log(error)
});
}).listen(8041);
console.log('Server running at 127.0.0.1 on port 8041');
我尝试用二进制数据和文本数据进行响应,但似乎都无法正常工作。
最佳答案
DICOM Echo不像ping那样简单。您必须实现DICOM网络协议的完整堆栈的子集。我建议您不要使用现有的DICOM服务器,而不要使用node.js编写自己的服务器。 Orthanc是免费的DICOM服务器的示例,该服务器旨在用作Web应用程序的后端服务。 Orthanc具有对DICOM C-Echo的内置支持,可以通过对其REST API(URI /modalities/{dicom}/echo
)的AJAX请求来触发它。
免责声明:我是Orthanc的作者。
关于node.js - 在node.js中实现的WADO协议(protocol),我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/33745258/