Не удается загрузить пакетный ответ MailChimp API v3

#php #curl #mailchimp #mailchimp-api-v3.0

#php #curl #mailchimp #mailchimp-api-v3.0

Вопрос:

После выполнения пакетного запроса MailChimp API v3 он возвращает URL-адрес a .tar.gz файл с ответом.

При копировании / вставке URL-адреса в адресное поле браузера файл загружается мгновенно.

Но при попытке загрузить этот файл с помощью PHP cURL ответ «Отказано в доступе».

Это мой скрипт PHP cURL:

 $_curl = curl_init();
curl_setopt_array($_curl, array(
    CURLOPT_URL => $_GET['responseUrl'],
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_ENCODING => ''
));
$_response = curl_exec($_curl);
curl_close($_curl);
echo $_response;
  

Это ответ (в виде строки):

 <?xml version="1.0" encoding="UTF-8"?>
<Error>
    <Code>AccessDenied</Code>
    <Message>Access Denied</Message>
    <RequestId>___someRequestId___</RequestId>
    <HostId>___someHostId___</HostId>
</Error>
  

Попытка запроса cURL из командной строки curl -v https://... возвращает:

 [1] 54284
[2] 54285
[2]   Done                    Expires=1475609534
*   Trying 54.231.40.155...
* Connected to mailchimp-api-batch.s3.amazonaws.com (54.231.40.155) port 443 (#0)
* TLS 1.2 connection using TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
* Server certificate: *.s3.amazonaws.com
* Server certificate: DigiCert Baltimore CA-2 G2
* Server certificate: Baltimore CyberTrust Root
> GET /c1b0e9e42e-response.tar.gz?AWSAccessKeyId=AKIAJWOH5BECJQZIEWNQ HTTP/1.1
> Host: mailchimp-api-batch.s3.amazonaws.com
> User-Agent: curl/7.49.1
> Accept: */*
> 
< HTTP/1.1 403 Forbidden
< x-amz-request-id: E15A53E1C3223996
< x-amz-id-2: UlcIl/cpOwDL9glkG7aho7HEpbskm8f/V56U71yfZWyefyALUHW0bvLFU5iRGiAFb t2fx/77Fo=
< Content-Type: application/xml
< Transfer-Encoding: chunked
< Date: Tue, 04 Oct 2016 19:35:19 GMT
< Server: AmazonS3
< 
<?xml version="1.0" encoding="UTF-8"?>
* Connection #0 to host mailchimp-api-batch.s3.amazonaws.com left intact
<Error><Code>AccessDenied</Code><Message>Access Denied</Message><RequestId>E15A53E1C3223996</RequestId><HostId>UlcIl/cpOwDL9glkG7aho7HEpbskm8f/V56U71yfZWyefyALUHW0bvLFU5iRGiAFb t2fx/77Fo=</HostId></Error>
  

Что не так с запросом cURL?

Комментарии:

1. В вашем браузере есть файлы cookie MailChimp? Когда вы очищаете файлы cookie и вводите URL-адрес, файл все еще загружается?

2. Я запустил пакет в Chrome и ввел URL-адрес в Opera в закрытом окне после очистки всей истории. Загрузка сработала.