如何使用 Gibbon (rails wrapper) 直接访问 Mailchimp 上的 body 变量
Posted
技术标签:
【中文标题】如何使用 Gibbon (rails wrapper) 直接访问 Mailchimp 上的 body 变量【英文标题】:How can I get direct access to body variable on Mailchimp, using Gibbon (rails wrapper) 【发布时间】:2017-06-16 17:44:11 【问题描述】:我们正在尝试检查列表中的特定成员是否已订阅或取消订阅。我们试过了
gibbon.lists(list_id).members(lower_case_md5_hashed_email_address).retrieve
这个。然而,代码的哈希返回是用“Gibbon::Response”包装的。我怎样才能直接访问哈希本身?或者甚至可以访问它?
【问题讨论】:
你添加params
了吗?这是直接来自长臂猿GIT:gibbon.lists(list_id).members.retrieve(params: "count": "50", "offset": "50", "status": "subscribed")
是的,我也试过了。虽然,我得到的数据包含在#<Gibbon::Response: ... @body="id"=>".....", "email_address"=>"......", ..., "status"=>"subscribed"
中,但是我想得到subscribed
作为回报。我该怎么做?...@scoopzilla
那是API的响应?然后订阅会员。
@scoopzilla 是的...我知道,但我想让 Rails 自己判断它。据我了解,要做到这一点,我需要将status
值作为subscribed
或unsubscribed
的返回值。问题是我不知道如何访问#<Gibbon::Response: ...
括号内的status
值。这个问题是否有意义?
该死,这正是我想要的。有人知道吗?
【参考方案1】:
在寻找这个问题的答案一段时间后,我没有找到答案,我只是测试并玩弄了我的代码,最终想出了解决方案。它看起来像这样:
Gibbon::Request.lists(list_id).members(user_email).retrieve.body["status"]
在你的情况下,它看起来像这样:
gibbon.lists(list_id).members(lower_case_md5_hashed_email_address).retrieve.body["status"]
这也意味着您可以从正文中检索任何信息。比如email_address
、merge_fields
等等。
只是为了让其他人清楚,list_id
是您可以在 mailchimp 仪表板中找到的受众 ID。它基本上是一个自动生成的字符串,用于标识您创建的邮件列表。
还有user_email
只是引号中的电子邮件地址。
【讨论】:
以上是关于如何使用 Gibbon (rails wrapper) 直接访问 Mailchimp 上的 body 变量的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Gibbon gem 编辑 mailchimp 列表中现有成员的电子邮件地址
未初始化的常量 Gibbon::Request (NameError)
为啥 Gibbon Gem 可以访问 API 但不能 listSubscribe()?
为啥长臂猿会抛出“未初始化的常量 Gibbon::API (NameError)”