如何将变量作为参数传递给 Mailchimp 函数?
How can I pass a variable into a Mailchimp function as a parameter?
我觉得这是一个非常基本的问题所以我提前道歉,我花了几个小时才决定问这个问题。
简而言之,我正在使用 MailChimp API 来 archive/delete 一个用户。
public function archiveClient(Request $request){
$client_email = md5(strtolower($request->client_email));
$mailchimp = new \MailchimpMarketing\ApiClient();
$mailchimp->setConfig([
'apiKey' => config('services.mailchimp.key'),
'server' => 'us14'
]);
$mailchimp->lists->deleteListMember("list_id", "<?php $client_email ?>");
}
List_id
工作得很好,我在其他功能中使用它来添加订阅者。为了隐私,我把它改回了 list_id
。然而,subscriber_hash
参数需要用户电子邮件的小写 MD5 散列,这就是问题所在。我尝试了各种方法,但仍然遇到同样的错误:
GuzzleHttp\Exception\ClientException
Client error: DELETE
https://us14.api.mailchimp.com/3.0/lists/list_id/members/%3C%3Fphp%20d076a26e78f7e9935a3af1a8f5124b98%20%3F%3E
resulted in a 404 Not Found response:
{"type":"https://mailchimp.com/developer/marketing/docs/errors/","title":"Resource
Not Found","status":404,"detail":"The (truncated...)
目标电子邮件地址在 Mailchimp 上,并作为 $request->client_email
中的字符串正确通过,问题出在哈希上。任何帮助,将不胜感激!谢谢!
Paul T 和 Greg Schmidt 的上述建议是正确的!
参数应设置为 ("list_id", $client_email)
此修复后,我收到了一个 405 错误,该错误已被截断。因此,我使用以下内容来查找准确的错误:
try {
$mailchimp->lists->deleteListMember("list_id", $client_email);
} catch (\GuzzleHttp\Exception\RequestException $ex) {
return $ex->getResponse()->getBody()->getContents();
}
原因是我使用了 'cleaned' 的联系人。在对 'subscribed' 成员进行测试后,它工作得很好。
我觉得这是一个非常基本的问题所以我提前道歉,我花了几个小时才决定问这个问题。
简而言之,我正在使用 MailChimp API 来 archive/delete 一个用户。
public function archiveClient(Request $request){
$client_email = md5(strtolower($request->client_email));
$mailchimp = new \MailchimpMarketing\ApiClient();
$mailchimp->setConfig([
'apiKey' => config('services.mailchimp.key'),
'server' => 'us14'
]);
$mailchimp->lists->deleteListMember("list_id", "<?php $client_email ?>");
}
List_id
工作得很好,我在其他功能中使用它来添加订阅者。为了隐私,我把它改回了 list_id
。然而,subscriber_hash
参数需要用户电子邮件的小写 MD5 散列,这就是问题所在。我尝试了各种方法,但仍然遇到同样的错误:
GuzzleHttp\Exception\ClientException
Client error: DELETE https://us14.api.mailchimp.com/3.0/lists/list_id/members/%3C%3Fphp%20d076a26e78f7e9935a3af1a8f5124b98%20%3F%3E resulted in a 404 Not Found response: {"type":"https://mailchimp.com/developer/marketing/docs/errors/","title":"Resource Not Found","status":404,"detail":"The (truncated...)
目标电子邮件地址在 Mailchimp 上,并作为 $request->client_email
中的字符串正确通过,问题出在哈希上。任何帮助,将不胜感激!谢谢!
Paul T 和 Greg Schmidt 的上述建议是正确的!
参数应设置为 ("list_id", $client_email)
此修复后,我收到了一个 405 错误,该错误已被截断。因此,我使用以下内容来查找准确的错误:
try {
$mailchimp->lists->deleteListMember("list_id", $client_email);
} catch (\GuzzleHttp\Exception\RequestException $ex) {
return $ex->getResponse()->getBody()->getContents();
}
原因是我使用了 'cleaned' 的联系人。在对 'subscribed' 成员进行测试后,它工作得很好。