загрузка с использованием Mashape для загрузки в imgur всегда говорит, что изображение повреждено или не поддерживается формат

1

Я использую API MashApe для загрузки изображений в Imgur с помощью PHP следующим образом:

$valid_file_extensions = array(".jpg", ".jpeg", ".gif", ".png");

        $file_extension = strrchr($_FILES["file"]["name"], ".");

        if (in_array($file_extension, $valid_file_extensions)) {
            if (@getimagesize($_FILES["file"]["tmp_name"]) !== false) {

                $filename = $_FILES['file']['tmp_name'];
                $handle = fopen($filename, "r");
                $data = fread($handle, filesize($filename));

                $response = Unirest\Request::post("https://imgur-apiv3.p.mashape.com/3/image",
                    array(
                        "X-Mashape-Key" => "key",
                        "Authorization" => "Client-ID ID",
                        "Content-Type" => "application/x-www-form-urlencoded"
                    ),
                    array(
                        "image" => base64_encode($data)
                    )
                );

                var_dump(base64_encode($data));
                $result = json_decode($response->raw_body);

                if ($result->success) {
                    var_dump($result);
                } else {
                    $Pointer->Bootstrap()->Alert($result->data->error, "danger");
                }

            }
        }

но он всегда дает мне следующую ошибку: Image is corrupted or format is not supported.

Теги:
base64
imgur
mashape

1 ответ

-1

Если вы загрузили веб-сайт и изменили тип файла на gif, когда вы его сохранили, преобразование слишком искажено для imgur. Попробуйте Cloudconvert, пока один из нас не выяснит, как сделать это в автономном режиме.

Я рекомендую ShareX для автоматической загрузки в imgur.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню