尝试通过 RestTemplate 发送 Post 消息时收到 400 "Bad request"

Receive 400 "Bad request" when attempting to Post message via RestTemplate

我有这段代码要POST留言

    RestTemplate restTemplate = new RestTemplate();

    Credentials Credentials = new Credentials();

    Credentials.setDomainId ("domain");
    Credentials.setLogin        ("login");
    Credentials.setPasswd       ("pwd");

    SmsMessage smsMessage = new SmsMessage();   

    smsMessage.setAck(false);
    smsMessage.setConcat(false);
    smsMessage.setDestination("33470855146");
    smsMessage.setMsg("This is a test");

    SmsMessages smsMessages = new SmsMessages();

    List<SmsMessage> messages = new ArrayList<SmsMessage>();
    messages.add(smsMessage);

    smsMessages.setCredentials(Credentials);
    smsMessages.setMessages(messages);

    HttpEntity<SmsMessages> request = new HttpEntity<>(smsMessages);    
    URI sms = restTemplate.postForLocation(POST_MESSAGE_URL, request);

但我得到了 400 "Bad request"。有没有办法确切地知道我发送的 JSon 字符串来尝试来自命令行的请求 - 使用 curl ??

如果您正在使用 spring 引导,您可以通过以下方式启用调试日志记录:

logging.level.org.apache.http=DEBUG

logging.level.org.apache.http.wire=DEBUG

您也可以尝试为 RestTemplate class 本身打开 DEBUG 级别

logging.level.org.springframework.web.client.RestTemplate=DEBUG