当前位置: 首页 > 知识库问答 >
问题:

重新发布:发布同时包含字符串和整数的json请求

范浩荡
2023-03-14

我只想为这样的json发布json请求(使用restassured):

{
 "userId": 1,
 "id": 111,
 "title":"test msg"
 "body": "this is test msg"
}

Im定义基本uri,并尝试使用hashmap:

RestAssured.baseURI = "http://localhost:8888";
RestAssured.basePath = "/posts/";

Map<String, String> map = new HashMap<String, String>();
map.put("userId", 1);
map.put("id", 111);
map.put("title","test Post");
map.put("body","this is test body");

当然是“红色”,因为尝试将整数作为字符串。

我正在换成字符串。valueOf()用于我的1和111个数字,

然后使用smth like成功发布请求

 given()
    .contentType("application/json")
    .body(map)
    .when()
    .post("/")
    .then()
    .statusCode(201);

但响应不正确(与所需的json相比):

{
    "id": "111",
    "title": "test Post",
    "body": "this is test body",
    "userId": "1"
}

此处有2点:

- id and userId posted as Strings
- order is incorrect

那么,问题是:在这种情况下,以正确的顺序并使用id和usedId的int值正确发布所需请求的最佳方法是什么?

谢谢

共有1个答案

汲时铭
2023-03-14

您可以使用地图

对象是一组无序的名称/值对。您可以查看JSON规范以获取更多信息。

 类似资料:
  • 我试图用C#代码在一个请求中上传image和json,但服务器总是返回400个错误的请求。使用fiddler执行相同的请求返回状态代码200。帮忙... 以下是我的小提琴手代码: ------WebKitFormBoundary7MA4YWXKTRZU0GW内容-配置:表单-数据;name=“application/json”content-type:application/json 反应总是一样

  • 此处的文档:http://www.rabbitmq.com/semantics.html 声明当信道关闭时,它被重新分配以进行传递 消息可以使用以requeue参数(Basic.recover、Basic.reject和Basic.NACK)为特征的AMQP方法返回到队列,也可以由于在保留未确认消息时通道关闭而返回到队列。对于2.7.0之前的RabbitMQ版本,这些场景中的任何一个都会导致消息在

  • 这个程序对两者都使用get/set方法,但我就是不知道怎么做! 感谢有帮助的用户推荐字符串。valueOf,我现在有这个 public int getSeatNumber(){ <代码>字符串输出=“”seatLetter字符串。valueOf(座位号) <代码>返回输出;} 但仍有相同的错误,“类型不兼容,字符串无法转换为int”。 这是完整的对象,尽管并不是所有变量都已设置,因为这是可循环使用

  • 问题内容: 如何使用HttpURLConnection发布JSON数据?我正在尝试: 我在第14行中收到编译错误。 cURL请求为: 这是处理cURL请求的方法吗?任何信息对我都会非常有帮助。 谢谢。 问题答案: OutputStream希望使用字节,并且您要向其传递字符。试试这个:

  • 问题内容: 我需要将JSON从客户端发布到服务器。我正在使用Python 2.7.1和simplejson。客户端正在使用请求。服务器是CherryPy。我可以从服务器获取硬编码的JSON(代码未显示),但是当我尝试将JSON POST到服务器时,出现“ 400 Bad Request”。 这是我的客户代码: 这是服务器代码。 有任何想法吗? 问题答案: 从Requests 2.4.2及更高版本开

  • 我创建了两个java类TestA.java和TestB。java使用restAssured,其中每个类都从TestA读取json。json和testB。json并向endpointuri.TestA发出请求。java返回一个带有标记“customerID”的json响应,该标记将作为TestB的一个标记的输入。当我使用“TestB.java”customerID发布请求时,必须从TestB中选择。