通过NHS MESH发送FHIR文档遇接收失败及不可读报错求助
解决NHS MESH发送FHIR文档报“Unreadable message received”的排查步骤
- 确认MESH消息封装规范:不要直接发送原始FHIR JSON,NHS MESH要求FHIR消息必须按指定结构封装,同时需设置正确的
Content-Type请求头(必须为application/fhir+json),消息元数据(如消息类型、收件人ID等)也得严格符合MESH要求,这是最容易踩的坑。 - 核对资源引用一致性:虽然FHIR验证站点检测通过,但MESH解析器可能对资源间的引用检查更严格。仔细核对Composition资源中引用的Patient、Practitioner、Organisation的
id,确保与数据包内对应资源的id完全匹配,无拼写错误或漏引用情况。 - 检查FHIR版本兼容性:确认你使用的FHIR版本(如R4)与NHS MESH支持的版本一致,部分旧版MESH可能仅兼容特定FHIR版本,版本不匹配会直接导致解析失败。
- 测试最小化数据包:精简当前数据包,只保留最基础的Composition和Patient资源,去掉非必要字段与其他资源,先尝试发送最小可行消息,排查是否是某个特定资源或字段引发的问题。
- 查看MESH详细错误日志:若拥有MESH管理控制台访问权限,务必查看详细错误日志——“Unreadable message received”只是通用提示,日志中会包含具体失败原因,比如JSON存在MESH解析器不兼容的语法细节、字段长度超限等。
内容的提问来源于stack exchange,提问作者Chris Cooper
相关产品推荐
相关产品推荐

