从AWS JSON响应设置Postman集合变量时遇ReferenceError的解决方法
解决Postman中存储带“x-amz”前缀AWS参数的ReferenceError问题
问题出在JavaScript的属性访问语法上:当对象属性名包含连字符(-)这类特殊字符时,不能用.点语法访问,必须改用方括号语法。你的代码里jsonData.multipart_params.x-amz-algorithm会被JS解析器错误解读——它会把x当作属性名,然后把-amz当成减法运算,自然就抛出了ReferenceError: amz is not defined的错误。
修正后的代码如下:
let jsonData = JSON.parse(responseBody); pm.collectionVariables.set("x-amz-algorithm", jsonData.multipart_params["x-amz-algorithm"]);
所有带“x-amz”前缀的AWS参数,都需要用这种方括号包裹属性名的方式访问,比如jsonData.multipart_params["x-amz-date"]、jsonData.multipart_params["x-amz-signature"]等都适用。
内容的提问来源于stack exchange,提问作者Jimmy TPM
相关产品推荐
相关产品推荐

