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

JMeter调用GraphQL接口时传递float类型变量报错如何解决?

报错根因

你当前的写法存在两个问题:

  • 变量外层包裹了双引号,GraphQL会直接将该值识别为字符串类型,与接口定义的Float类型不匹配
  • 自定义变量值末尾的F后缀属于GraphQL的Float类型不支持的无效字符

报错信息对应描述:Float cannot represent non numeric value: "xxx"

解决方案

按以下步骤修改即可:

  • 去掉变量外层的双引号
    原写法:latitude:"${latitudeValue}"
    修改为:latitude:${latitudeValue}
  • 清理变量值的多余F后缀
    1. 如果是手动给自定义变量加的后缀,直接在「用户自定义变量」组件中删除F,保留纯数值即可,比如将41.98240048026275F改为41.98240048026275
    2. 如果是从其他接口提取的变量自动携带F,可以用JMeter函数动态移除后缀,最终写法为:
      latitude:${__javaScript("${latitudeValue}".replace("F",""),)}
  • 可选兜底方案:通过GraphQL变量声明统一管控类型
    可以在查询语句开头先明确声明变量类型,再单独通过变量块传值,避免类型识别错误,写法示例:
    1. 查询语句部分:
    query ($latitude: Float, $longitude: Float) {
      # 替换为你实际的查询名和返回字段
      getLocation(latitude: $latitude, longitude: $longitude) {
        id
        address
      }
    }
    
    1. JMeter请求的Variables区域填写内容:
    {
      "latitude": ${latitudeValue},
      "longitude": ${longitudeValue}
    }
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.04 23:18:03