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

Robot Framework中无法从API JSON响应获取username/user_id的问题

API响应字段提取错误修正

问题根源

你的Robot Framework代码存在两处关键错误:

  • Get Json Value From String执行后,${origin}已经是API响应里的users列表,不存在content属性,这是触发类型错误的直接原因。
  • users是数组结构(对应Robot Framework中的列表),不是单个字典对象,不能直接通过['username']取值,必须先指定列表中的元素索引。

修正代码方案

方案一:分步提取

${response}=     GET     ${Base_URL}/v1/sync/users    ${data}   headers=${header}
# 提取完整的users列表
${users_list}=       Get Json Value From String   ${response.content}  users
# 获取第一个用户的username和user_id
${target_username}=    Set Variable    ${users_list[0]['username']}
${target_user_id}=     Set Variable    ${users_list[0]['user_id']}

方案二:直接定位字段(更简洁)

可以通过JSON路径直接定位到目标字段,省去中间变量:

${response}=     GET     ${Base_URL}/v1/sync/users    ${data}   headers=${header}
${target_username}=    Get Json Value From String    ${response.content}    users[0].username
${target_user_id}=     Get Json Value From String    ${response.content}    users[0].user_id

多用户场景处理

如果users列表包含多个用户,需要遍历所有用户的字段时,可使用FOR循环:

${response}=     GET     ${Base_URL}/v1/sync/users    ${data}   headers=${header}
${users_list}=       Get Json Value From String   ${response.content}  users

FOR    ${user}    IN    @{users_list}
    Log    用户名:${user['username']},用户ID:${user['user_id']}
END

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 11:50:46