MailChimp Api,解析图像时出错
Posted
技术标签:
【中文标题】MailChimp Api,解析图像时出错【英文标题】:MailChimp Api, Error parsing image 【发布时间】:2018-10-21 21:50:01 【问题描述】:错误:
类型:http://developer.mailchimp.com/documentation/mailchimp/guides/error-glossary/ 标题:无效资源状态:400 详细信息:解析图像时出错: 抱歉,不允许使用没有扩展名的文件。实例: ef9dc203-c04a-48bd-95b4-66c46de26b77
PHP 代码
$apikey = GP('mailchimp_api_key');
$auth = base64_encode( 'user:'.$apikey );
$list = array(
'name'=>'File Name',
'file_data'=>'iVBORw....'
//'file_data'=>'data:image/png;base64,iVBORw....'
);
$json_post = json_encode($list);
$ch = curl_init();
$curlopt_url = 'https://us18.api.mailchimp.com/3.0/file-manager/files';
curl_setopt($ch, CURLOPT_URL, $curlopt_url);
curl_setopt($ch, CURLOPT_HTTPHEADER, array('Content-Type: application/json', 'Authorization: Basic '.$auth));
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_post);
$result = curl_exec($ch);
$status_code = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
echo "<pre>";
print_r($result);
echo "</pre>";
我的问题,我想通过 MailChimp Api 上传照片。
错误的原因是什么?
【问题讨论】:
【参考方案1】:您需要在代码中为$list
数组中的name
参数的值设置文件扩展名。扩展名必须与您上传的文件完全相同。
curl --request POST \ --url 'https://usX.api.mailchimp.com/3.0/file-manager/files' \ --user 'anystring:apikey' \ --header 'content-type: application/json' \ --data '"name": "test.txt", "file_data": "VGhpcyBpcyBhbiBleGFtcGxlIGxpbmUgb2YgdGV4dC4="' \ --include
File Manager Files
【讨论】:
以上是关于MailChimp Api,解析图像时出错的主要内容,如果未能解决你的问题,请参考以下文章
MailChimp (Mandrill) for .NET 为啥电子邮件包含图像?