在 MailChimp API V3 中订阅用户给出错误的响应

Subsrcibe a user in MailChimp API V3 give bad response

当我尝试在 mailchimp 上订阅用户时,它给出了下面粘贴的错误响应:

‹<»nÃ0E…Вű2tòèt+ŠB‘[€.I¹0‚ü{i»è(Þ‹ÃC=Œ¬3šÁL"ómÀS'úìbòSÌsïk¶¡ú–±ˆ“X‹ýÏìØb@¶HTé<¦Êìhµ¦3%mÜ·²¸\'k#±R›áåréL@Q∼ß'ú +·[Ž"À×–”pCØQNÇ=¼V‚{ÄÈ<£÷èá@qŒ¢¸Ó®Å'pDníuu,º¼øML_Gl†‡ÙQÇ4£1n•+~•H ±§?H¸«ÌT½;€ÛW|¹TÍóóùÿÿI*¯Q`

这里是 PHP 代码:

$apiKey = 'YOUR API KEY';
$listId = 'YOUR LIST ID';
$url2 = 'https://us12.api.mailchimp.com/3.0/lists/'.$listId.'/members/';

$args = array(
        'email' => 'abc@xyz.com',
        'status' => 'subscribed',
        'merge_fields' => array(
            'first_name' => 'WOW',
            'last_name' => 'WOW',
            'mobile'=>'',
            'message'=>'',
            'ID'=>'000'
        ));

function syncMailchimp($url,$apiKey,$args) {

    $ch = curl_init();
        curl_setopt($ch, CURLOPT_URL, $url);
        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json'));
        curl_setopt($ch, CURLOPT_USERPWD, "user apikey:" . $apiKey);
        curl_setopt($ch, CURLOPT_USERAGENT, 'PHP-MCAPI/3.0');
        curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
        curl_setopt($ch, CURLOPT_TIMEOUT, 10);
        curl_setopt($ch, CURLOPT_POST, true);
        curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
        curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($args));
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, 'POST');
        $result = curl_exec($ch);
        curl_close($ch);
        return $result;
}

是服务器发送了错误数据还是客户端使用了错误的编码,我该如何解决?

将名为 email 的密钥更改为 email_address 似乎已修复它。也许那个坏密钥导致服务器呕吐。

 $args = array(
        'email' => 'abc@xyz.com',
        'status' => 'subscribed',
        'merge_fields' => array(
            'first_name' => 'WOW',
            'last_name' => 'WOW',
            'mobile'=>'',
            'message'=>'',
            'ID'=>'000'
        ));

$args = array(
        'email_address' => 'abc@xyz.com',
        'status' => 'subscribed',
        'merge_fields' => array(
            'first_name' => 'WOW',
            'last_name' => 'WOW',
            'mobile'=>'',
            'message'=>'',
            'ID'=>'000'
        ));