-1
当我对API端点执行CURL请求时,发现在解析请求时,我发送的JSON被放置在request> delegate> body内,而不是我期待在这里request.body()
从Java中的POST请求中提取数据
这是意想不到的,因此结果与下面的代码在数据库中创建一个空值的记录。
我是否需要修改curl请求?或者以其他方式提取数据?
卷曲请求:
curl -H "Content-Type: application/json" -X POST -d '{"name":"christian"}' http://127.0.0.1:4567/suppliers
POST码
post("/suppliers",
(request, response) -> {
response.type("application/json");
Supplier supplier = new Gson().fromJson(request.body(),
Supplier.class);
SupplierCrud sc = new SupplierCrud();
sc.createSupplier(supplier);
return new Gson().toJson(new StandardSupplierResponse(
StatusResponse.SUCCESS,new Gson().toJsonTree(supplier)));
});
怎样的代码,您提供的有关?它不会返回适当的JSON吗?如果你使用的是一种方法,你为什么关心变量的内容?该方法是否返回正确的值? – RealSkeptic
@RealSkeptic代码是相关的,因为我们可以看到json传入端点,但最重要的是不在'body'下,这是我可以用request.body'查询的唯一地方。该方法从不保存传递到POST中的值,因为它不被检索。 – TheMightyLlama