我有一个测试场景,其中Web应用程序中的字段填充了来自json响应的数据。
例如-
{
"viewcode": 20,
"actioncode": 40,
"subcode": 0,
"errorcode": 5,
"username": "MANAGER",
"database": "somedb",
"data": {
"personid": "070976",
"hidden_first": "",
"hidden_second": "",
"hidden_third": ""
}
}
为了实现这一点,我了解了RestAsure和HTTP客户端库,但我不确定如何发送请求部分或检索响应,因为在许多情况下响应非常大(超过150个名称值对)。
以下是我尝试过的:
RestAssured.baseuRL="someurl"
RequestSpecification httpRequest=RestAssured.given();
Response response=httpRequest.request(Method.POST,"{{"viewcode":20, "actioncode":40, "subcode":0, "errorcode":5, "username":"MANAGER", "database":"somedb", "data":{ "personid":"070976", "hidden_first":"", "hidden_second":"", "hidden_third":"" }}");
String responseBody=response.getBody.asString();
现在,我在 Method.POST 行中遇到错误,它的显示语法错误也使我对是否有其他方法感到困惑。
您需要转义一些符号(特别是“
):
"{\"viewcode\":20, \"actioncode\":40, \"subcode\":0, \"errorcode\":5, \"username\":\"MANAGER\", \"database\":\"somedb\", \"data\":{ \"personid\":\"070976\", \"hidden_first\":\"\", \"hidden_second\":\"\", \"hidden_third\":\"\" }}"
在您的代码中:
String json = "{\"viewcode\":20, \"actioncode\":40, \"subcode\":0, \"errorcode\":5, \"username\":\"MANAGER\", \"database\":\"somedb\", \"data\":{ \"personid\":\"070976\", \"hidden_first\":\"\", \"hidden_second\":\"\", \"hidden_third\":\"\" }}";
httpRequest.body(json);
Response response = httpRequest.post("/replace_with_your_endpoint");
可以在此处找到要转义的字符的完整列表。
当我请求GET请求时,我得到了JSON响应,但这里我的要求是验证响应体的结构。 例如: 上面的响应有结构,所以我需要验证结构而不是键值对,我如何实现?
我收到了针对我的API的错误请求的以下响应。我将RestAssured用于我的rest响应断言。 我需要验证响应的所有属性的值。我正在努力验证此路径:。我无法为它想出GPath。 以下是我所作的断言: 由于路径不正确,断言总是失败。
这是要根据模式验证的JSON。 问题是,如果我们传递了错误的数据,它将正确地验证eid和ename的类型(即整数或字符串)。对于例如: 如果我们为限定传递了错误的类型,那么它将验证为true(即,它不验证限定的类型,可能是因为它是嵌套的)。
//Json响应 我想验证名称是否为REST,然后描述是否为表示状态传输,如果名称为SOAP,然后描述是否为简单对象访问协议。有超过20条类似的响应记录,我如何使用通用参数放心地完成它。
问题: 有没有一种普通的或本机的javascript方法来根据JSON模式验证JSON脚本? 我在Github上找到了很多库,但没有原生/普通的解决方案。EcmaScript没有对此的规范吗?没有浏览器(或nodejs)有办法原生验证JSON吗? 问题的背景: 我有一个非常复杂的模式,我开发了一个。它应该与一个脚本一起工作,该脚本要求传入其中的 JSON 数据符合架构。
问题内容: 我使用Swagger定义创建了REST API,现在我需要使用该Swagger模式验证传入消息。我发现了几种解决方案,但是它们都依赖于某些特定的用例。最接近我需要的是它,并且按照它的描述,它可以与提供的json模式一起很好地工作,但是当我提供更复杂的swagger定义时,它只是将所有内容标记为有效。我的问题是。是否有更好,更完整或胜任的解决方案库,可以根据Swagger定义本地验证给定