You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

通过Twilio内容模板发送WhatsApp消息时添加换行的问题

在Twilio WhatsApp模板单个变量中添加换行的可行方案

你遇到的问题是直接传递\n会触发Twilio的无效内容错误(63005),而\f的跨客户端兼容性差。以下是两种可行的解决办法:

方法一:使用双重转义的换行符

在拼接列表时,用\\n替代\n,经过json.dumps序列化后,Twilio能正确解析为换行符,且所有WhatsApp客户端都能正常显示:

my_list = ["xxx", "yyy", "zzz"]
# 用双重转义的换行符拼接
list_str = "\\n".join(my_list)

# 传递给Twilio的代码保持不变
message = client.messages.create( 
    from_='whatsapp:+XXX',
    content_sid='HXXX',
    content_variables=json.dumps({"1": list_str}),
    to='whatsapp:+XXX',
    messaging_service_sid='XXXXX'
)

方法二:调整Twilio模板结构

如果允许修改模板,可以在模板中预先添加换行占位,将列表项拆分为多个变量。比如模板内容设为:

{{1}}
{{2}}
{{3}}

然后在代码中直接传递单个列表项:

my_list = ["xxx", "yyy", "zzz"]
message = client.messages.create( 
    from_='whatsapp:+XXX',
    content_sid='HXXX',
    content_variables=json.dumps({
        "1": my_list[0],
        "2": my_list[1],
        "3": my_list[2]
    }),
    to='whatsapp:+XXX',
    messaging_service_sid='XXXXX'
)

关键说明

  • 错误63005的核心原因是直接传递的\n被Twilio判定为不符合模板内容规范,双重转义后\\n会被正确解析为换行,且不会触发内容校验错误。
  • 避免使用非标准换行符(如\f),这类字符的客户端兼容性无法保证。

内容的提问来源于stack exchange,提问作者Marcelo

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 20:22:45