You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用JMeter上传DICOM图片时提示“Not a DICOM Stream”问题求助

JMeter上传DICOM图片异常排查方案
  • 还原加密逻辑
    浏览器请求负载存在加密数据,说明DICOM文件上传前经过了加密处理:

    1. 定位浏览器端加密逻辑:通过浏览器开发者工具的Sources面板,找到处理DICOM上传的JS代码,提取加密算法(如AES、RSA)、密钥、偏移量等核心参数。
    2. 在JMeter中模拟加密:添加JSR223 PreProcessor,编写对应加密脚本——先读取本地DICOM文件内容,再按照浏览器的加密规则处理,最后将加密后的数据作为请求负载发送。
  • 校验请求一致性
    逐字段对比JMeter请求与浏览器请求,确保完全匹配:

    • 基础信息:请求方法、URL、HTTP版本
    • 请求头:Content-Type(DICOM对应application/dicom或根据实际情况调整)、Cookie、Authorization及所有自定义请求头
    • 请求体:若为multipart/form-data上传,检查HTTP Request的Files Upload配置,确认文件名、MIME类型、表单参数与浏览器一致;若为raw格式,确保加密后的负载内容和浏览器的加密数据完全相同
  • 检查文件读取正确性

    • 使用__FileToString函数读取DICOM文件时,注意指定正确的编码(若加密前需二进制转字符串,需匹配浏览器的编码方式)
    • 若直接上传二进制文件,确保JMeter未对文件内容进行额外编码,可在HTTP Request中勾选Use multipart/form-data并正确配置文件路径
  • 启用调试日志排查
    修改jmeter.properties文件,设置log_level.jmeter.protocol.http=DEBUG,重启JMeter后运行脚本,查看日志中实际发送的请求详情,与浏览器Network面板的请求数据做对比,定位差异点

内容的提问来源于stack exchange,提问作者MAX GRIMM

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.25 13:24:23