Postman从JSON响应提取rating_id存入环境变量时写入null问题
问题:Postman中从JSON响应提取rating_id写入环境变量时始终为null
我尝试从JSON响应中获取rating_id并写入Postman环境变量,但发送请求后该变量始终被写入null值。相关信息如下:
JSON请求
{ "data": { "rating_id": "{{$guid}}", "collection_id": "7a313397-00de-49f5-bfb7-6341323ac053", "rating": "1", "user_comment": "test", "status": "1", "create_date": "2023-03-01 11:05:00+03", "create_user": "ivanov.ii" } }
JSON响应
{ "state": "success", "data": { "rating_id": "67e5b082-1c35-434f-b5e1-96eaf60310ea", "collection_id": "7a313397-00de-49f5-bfb7-6341323ac053", "rating": "1", "user_comment": "test", "status": "1", "create_date": "2023-03-01T16:51:00.087477Z", "create_user": "ivanov.ii" } }
当前使用的Tests脚本
var jsonResponse = pm.response.json(); pm.environment.set("rating_id", jsonResponse.rating_id);
解决方案
问题出在JSON响应的层级定位错误:响应中的rating_id嵌套在data对象内部,当前代码直接从根对象读取rating_id,自然返回null。
修改后的Tests脚本:
var jsonResponse = pm.response.json(); pm.environment.set("rating_id", jsonResponse.data.rating_id);
通过jsonResponse.data.rating_id可正确定位到响应中data对象下的rating_id字段,写入环境变量即可解决问题。
内容的提问来源于stack exchange,提问作者Din
相关产品推荐
相关产品推荐

