每当密钥包含“@”或“:”时,您如何从邮递员的正文中获取响应

问题描述

在 Postman 中,我试图从开头包含 '@' 和中间包含 ':' 的键中获取值。我可以通过使用 jsonData['@id']

获得第一个(@id)

例如:

let jsonData = pm.response.json();

pm.test("Body contains string",function () {
    pm.expect(jsonData['@id']).to.contain("v22");
});

但是我无法访问“@type”。我试过了……

 pm.expect(jsonData['hydra:member'][0].['@type']).to.contain("Campus");

但是我无法从下面的回复中得到它.....

 {
            "@context": "/v1/contexts/System","@id": "/v22/systems","hydra:member": [
              {
                "@type" : "Campus"
                   "id" : "01TRD456785"
      
        
              }
             ],

解决方法

我明白了......

pm.expect(jsonData['hydra:member'][0]['@type']).to.contain("Campus");