Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/sqlite/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Karate 如何将动态值设置为请求中json字符串的键_Karate - Fatal编程技术网

Karate 如何将动态值设置为请求中json字符串的键

Karate 如何将动态值设置为请求中json字符串的键,karate,Karate,在下面的JSON请求中:“paid”的值是动态生成的。当我尝试将值传递给JSON字符串属性时,它将“paid”作为字符串,而不是动态值来替换“paid” { "ENCRYP": { "data": "ENCRYPTED", "tEncryptedP": { "#(paid)": { "encryptedP": "#(parameters)" } } } } 在这种情况下,如何将动态值传递给JSON字符串属性?看起来您正在尝

在下面的JSON请求中:“paid”的值是动态生成的。当我尝试将值传递给JSON字符串属性时,它将“paid”作为字符串,而不是动态值来替换“paid”

{
  "ENCRYP": {
    "data": "ENCRYPTED",
    "tEncryptedP": {
      "#(paid)": {
        "encryptedP": "#(parameters)"
      }
    }
  }
}

在这种情况下,如何将动态值传递给JSON字符串属性?

看起来您正在尝试使用嵌入式表达式设置动态键

不确定是否可以使用嵌入表达式设置新键

但是你可以试试这样的

* def paid = "PaidKey"
* def parameters = "PAID PARAMETERS"
* def enc = 
"""
{
  "ENCRYP": {
    "data": "ENCRYPTED",
    "tEncryptedP": {
    }
  }
}
"""
* def encryptedP = {"encryptedP": "#(parameters)"}
* eval enc.ENCRYP.tEncryptedP[paid] = encryptedP