如何在Twilio内容模板发送的WhatsApp消息中添加换行
在Twilio WhatsApp模板消息的占位符中添加换行的正确方法
要在Twilio WhatsApp模板的占位符值中添加换行,有两种可靠的实现方式,推荐使用Map构建变量的方式避免手动转义错误:
方式一:使用Map构建内容变量(推荐)
直接用Java的Map存储占位符与对应值,值中直接用\n表示换行,Twilio SDK会自动处理JSON序列化,无需手动转义,避免出错:
Twilio.init(ACCOUNT_SID, AUTH_TOKEN); // 构建内容变量,直接用\n添加换行 Map<String, String> contentVariables = new HashMap<>(); contentVariables.put("1", "Name\nSex"); Message message = Message.creator( new com.twilio.type.PhoneNumber("whatsapp:+18551234567"), new com.twilio.type.PhoneNumber("whatsapp:+15551234567"), "HXXXXXXXXX") .setContentVariables(contentVariables) // 传入Map,SDK自动生成合法JSON .setMessagingServiceSid("MGXXXXXXXX") .create();
方式二:手动构造合法的JSON字符串
如果必须手动写JSON字符串,需要注意Java字符串的双重转义规则:JSON中的换行符\n在Java字符串中要写成\\n,同时确保整个JSON格式合法:
Twilio.init(ACCOUNT_SID, AUTH_TOKEN); Message message = Message.creator( new com.twilio.type.PhoneNumber("whatsapp:+18551234567"), new com.twilio.type.PhoneNumber("whatsapp:+15551234567"), "HXXXXXXXXX") .setContentVariables("{\"1\":\"Name\\nSex\"}") // Java中用\\n表示JSON的\n .setMessagingServiceSid("MGXXXXXXXX") .create();
注意事项
- 确保你的WhatsApp模板已通过Twilio审核,且模板本身允许占位符内容包含换行(Twilio默认支持此场景)。
- 手动构造JSON时容易出现转义错误或格式问题,优先使用Map方式。
内容的提问来源于stack exchange,提问作者Sean Cua
相关产品推荐
相关产品推荐

