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

如何在RobotFramework中获取Get请求的HTML响应体?

问题分析

从返回的响应头和内容来看,服务器返回的Content-Length为0,说明请求未被正确处理,导致服务器没有返回预期的HTML内容。核心问题出在请求参数的传递方式上:

  • 你在Get On Session中使用了json=${PARAMS}参数,但GET请求不支持通过请求体传递JSON参数,这个参数通常用于POST/PUT等需要发送请求体的方法。Postman中你应该是将参数放在了URL查询字符串里,所以能正常获取响应。
  • 服务器返回的Content-Type标记为application/json但内容为空,调用response.json()自然会触发JSON解码错误。
解决方案
  1. 修正参数传递方式
    将请求中的json=${PARAMS}替换为params=${PARAMS},这样RobotFramework会自动将参数拼接为URL的查询字符串,和Postman的行为一致:

    ${response}         GET On Session    API_${SUITE_NAME}   myURL     params=${PARAMS}   headers=${HEADERS}      expected_status=${desired_status_code}
    
  2. 获取HTML响应内容
    请求成功后,直接通过${response.text}属性获取HTML文本内容,无需调用json()方法:

    ${html_content}    Set Variable    ${response.text}
    # 后续可对${html_content}进行解析或交互操作
    
  3. 检查请求头(可选)
    如果你的请求头中设置了Content-Type: application/json,建议移除该配置,因为GET请求不需要发送请求体,多余的Content-Type可能导致服务器误解请求格式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.02 11:40:13