![](/img/trans.png)
[英]Decode base64 encoded JSON to POJO with jackson and spring-boot
[英]Parsing Base64 json directly into a POJO in a spring MVC controller
控制器代码
@RequestMapping(value = "/second", method = RequestMethod.POST,
consumes = "application/json")
@ResponseBody
public void test(@RequestBody RegistrationRequest
registrationRequest)
{
System.out.println(registrationRequest.toString());
}
POJO
@Data
@JsonDeserialize(using = Base64Deserializer.class)
public class RegistrationRequest {
@JsonProperty("payment-method-details")
public PaymentMethodDetails paymentMethodDetails;
@JsonProperty("customer-details")
public CustomerDetails customerDetails;
}
CustomerDetails,PaymentMethodDetails都是自己的POJO。 我对Spring MVC概念非常陌生,这是到目前为止我所知道的所有内容,但是在向邮递员发出发帖请求时,它不起作用。 我在做什么错?
我无法操纵任何请求将如何到达。
使用Base64解串器
从这个问题尚不清楚有关请求的所需格式。
上面的代码应该可以很好地处理如下请求:
curl -X POST "http://myhost:port/rootPath/second/" -d '{"payment-method-details":"eyJwYXltZW50TWV0aG9kRGV0YWlsc1ZhcjEiOiJzb21lIHRleHQiLCJwYXltZW50TWV0aG9kRGV0YWlsc1ZhcjIiOiJzb21lIHRleHQyIn0=", "customer-details":"eyJjdXN0b21lckRldGFpbHNWYXIxIjoic29tZSB0ZXh0IiwiY3VzdG9tZXJEZXRhaWxzVmFyMiI6InNvbWUgdGV4dDIifQ=="}'
这将使上面的代码正常工作并输出输出。
请注意,此处eyJjdXN0b21lckRldGFpbHNWYXIxIjoic29tZSB0ZXh0IiwiY3VzdG9tZXJEZXRhaWxzVmFyMiI6InNvbWUgdGV4dDIifQ==
将{"customerDetailsVar1":"some text","customerDetailsVar2":"some text2"}
eyJjdXN0b21lckRldGFpbHNWYXIxIjoic29tZSB0ZXh0IiwiY3VzdG9tZXJEZXRhaWxzVmFyMiI6InNvbWUgdGV4dDIifQ==
{"customerDetailsVar1":"some text","customerDetailsVar2":"some text2"}
在“ eyJjdXN0b21lckRldGFpbHNWYXIxIjoic29tZSB0ZXh0IiwiY3VzdG9tZXJEZXRhaWxzVmFyMiI6InNvbWUgdGV4dDIifQ==
{"customerDetailsVar1":"some text","customerDetailsVar2":"some text2"}
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.