Проблема с получением картинок

Комментарии

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

  • Екатерина Евтухова

    Михаил, добрый день!

     

    Да, действительно, 20.07 произошло обновление - теперь JSON API отдает не ссылку на саму картинку, а редирект на временный URL картинки. Когда Вы вставляете ссылку в браузер, редирект происходит автоматически, поэтому скачивание картинки выполняется без ошибок.

    Для корректной работы Вам необходимо добавить поддержку редиректов для ссылок на картинки в Ваш плагин.

    1
    Действия с комментариями Постоянная ссылка
  • Денис
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
    1
    Действия с комментариями Постоянная ссылка
  • curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);

    Не помогло.

    Файл не скачивался. Редирект присылал 404 код .Не много покопавшись.

    Реализовал такой код, Все заработало.

    curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
    curl_setopt($ch, CURLOPT_BINARYTRANSFER, true);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION , true);
    curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

    $output = curl_exec($ch);
    $info = curl_getinfo($ch); // Получим информацию об операции

    $fh = fopen($fh_url, 'w');
    if($target_url == $info['url']){//если редиректа нет записываем файл
    fwrite($fh, $output);
    }else{
    $file = file_get_contents($info['url']);//если редирект есть то скачиваем файл по ссылке
    fwrite($fh, $file);
    }

    fclose($fh);

    Может кому пригодиться.

     

    4
    Действия с комментариями Постоянная ссылка
  • Олег Фролов

    Та же самая проблема. Попросил техподдержку дать пример кода, как можно получить картинки. Ответ техподдержи потряс своей лаконичностью:

    Юлия Сапожникова (Поддержка сервиса МойСклад)
    3 авг., 17:19 MSK

    Служба поддержки не предоставляет примеры кода.
    Пример вы можете запросить в сообществе разработчиков JSON API.


    С уважением, Сапожникова Юлия
    Специалист службы поддержки пользователей
    Сервис МойСклад

    8 (800) 250-0432 (звонок по России бесплатный)
    8 (495) 228-0432 (телефон в Москве)
    доб. 110

    -2
    Действия с комментариями Постоянная ссылка
  • Alexey Andreev

    -

    0
    Действия с комментариями Постоянная ссылка

Войдите в службу, чтобы оставить комментарий.