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

Robot Framework用REST库发GET请求下载文件报KeyError: 'content-type'

Robot Framework REST库下载文件报KeyError: 'content-type'解决方案

问题根因

该报错是因为Robot Framework REST库(通常指RESTinstance)默认会读取响应头的Content-Type字段,用于自动解析响应体格式。文件下载接口返回二进制流时,要么接口未返回标准Content-Type头,要么库的默认解析逻辑不兼容二进制响应场景,就会触发该键值不存在报错。

需要补充的设置项

  • 补充Accept请求头,适配二进制流返回规则
    多数文件下载接口要求请求端声明可接受的返回类型,你可以根据实际下载的文件类型填写,或者先使用通用匹配:
    Set headers    { "Auth": "${code}", "Accept": "*/*" }
    
  • 关闭REST库的自动响应解析配置
    调用GET请求前添加配置,跳过依赖Content-Type的解析逻辑,专门适配二进制流场景:
    Set REST Configuration    response_parser    none
    
  • 可选配置:如果需要本地保存下载的文件,拿到响应后新增导出逻辑:
    ${file_content}    Get Response Body    binary
    Create Binary File    ./download/file_${id}.xxx    ${file_content}
    

修正后的完整测试代码

download file
    [Arguments]        ${id}
    # 跳过响应自动解析,避免校验Content-Type
    Set REST Configuration    response_parser    none
    # 补充Accept头适配二进制返回
    Set headers    { "Auth": "${code}", "Accept": "*/*" }
    GET        /api/file/download/${id}
    Integer    response status    200
    # 可选:将二进制内容保存到本地
    ${file_content}    Get Response Body    binary
    Create Binary File    ./download/test_file_${id}.dat    ${file_content}

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 01:27:03