我正在尝试比较2个REST API的XML响应。我想比较从Response1到Response2的几个字段。
响应1:
<d:site_name>Bondi Junction</d:site_name>
<d:country>AU</d:country>
<d:regio>NSW</d:regio>
<d:contact>123456789</d:contact>
响应2:
<d:country>AU</d:country>
<d:region>NSW</d:region>
我创建了一个集合,它将同时具有两个API,并且我想同时运行两个API并比较可用的列(我不想完全比较)。
您能指导我完成一项工作吗?
谢谢, 塞卡尔
答案 0 :(得分:1)
据我所知,没有简单的方法可以比较xml属性和元素的值而不将xml转换为json。
以下是2个用例(测试)的工作示例(将XML转换为json)
data "template_file" "map_roles" {
template = <<EOF
- rolearn: ${arn}
username: system:node:{{EC2PrivateDNSName}}
groups:
- system:bootstrappers
- system:nodes
EOF
vars {
arn = ${aws_iam_role.tf-eks-node.arn}
}
}
resource "kubernetes_config_map" "aws_auth" {
metadata {
name = "aws-auth"
namespace = "kube-system"
}
data {
mapRoles = ${data.template_file.map_roles}
}
}
,您可以测试2个xml是否存在任何差异。使用json路径提取xml元素的值,您还可以比较特定的字段值
difference()