waNet: ошибка при отправке файла с помощью CURL

1

Начиная с PHP 7 перестала работать передача файлов в формате '@path', они должны быть CURLFile объектами. Проблема в том, что waNet что преобразует все данные в строку, даже FORMAT_RAW/FORMAT_CUSTOM, поэтому неудается передать файлы.

Решение: если TRANSPORT_CURL и формат FORMAT_CUSTOM, то контент не преобразуется с помощью метода encodeRequest.

Т.е. заменить

switch ($method) {
    case self::METHOD_POST:
    case self::METHOD_PUT:
        $content = $this->encodeRequest($content);
        break;
}

на

if (in_array($method, [self::METHOD_POST, self::METHOD_PUT])) {
    if ($this->getTransport($url) != self::TRANSPORT_CURL || $format != self::FORMAT_CUSTOM) {
        $content = $this->encodeRequest($content);
    }
}

0 комментариев

    Добавить комментарий

    Чтобы добавить комментарий, зарегистрируйтесь или войдите