访问除合并变量之外的对 Mandrill API 的 JSON 请求中的变量
Posted
技术标签:
【中文标题】访问除合并变量之外的对 Mandrill API 的 JSON 请求中的变量【英文标题】:Acessing variables on JSON request to Mandrill API other than merge_vars 【发布时间】:2015-10-05 18:00:57 【问题描述】:我正在尝试将 Mandrill 服务与另一个可以向其发送 http POST 的 API 相结合,以将变量合并到模板中并发送电子邮件。问题是很难让这个其他 API 像 Mandrill 的 API 所期望的那样发送 JSON 对象。
其他 API 可以轻松发送类似
的扁平 JSON"name":"some name","firstvar":"10","secondvar":"20"
,
但是很难让它创建一个复杂的 JSON,包含内部数组等等。
Mandrill 理解的 JSON 格式的另一个问题是,在 global_merge_vars 中,名称值对不成对:
[ "name":"MyVariable" , "content":"123" ,
"name":"SecondVariable" , "content":"321" ]
代替:
[ "MyVariable":"123" ,
"SecondVariable":"321" ]
这让事情变得更难了。
所以我想知道的是,Mandrill 是否可以合并 global_merge_vars 或 merge_vars 数组中的其他变量,并通过它们的名称值关系来引用它们。
如果您知道适合本案例的其他解决方案或服务,我也将不胜感激。
提前谢谢你。
【问题讨论】:
【参考方案1】:您需要编写代码,从您正在使用的其他 API 获取信息并将其转换为 Mandrill 所需的格式。不可能传递不是它接受的格式的 Mandrill 数据并将其映射到正确的格式 - 有太多的可能性使它成为一个可行的功能。您可能想要解码从其他 API 获得的 JSON,然后为 Mandrill 构建有效负载。将 Mandrill API 客户端用于您正在使用的语言以使其更容易,或者使用像 Zapier 这样的服务来配对 API 而无需知道如何编码,这可能会有所帮助。
【讨论】:
以上是关于访问除合并变量之外的对 Mandrill API 的 JSON 请求中的变量的主要内容,如果未能解决你的问题,请参考以下文章
如何在 Mandrill 中为本机 Mailchimp 的合并标签设置值?