调用在线转换rest api


Call online-convert rest api

我正在使用这个在线转换服务,试图进行一个简单的调用,就像在线转换示例中一样。然而,他们没有实际代码的例子,所以我有点蒙在鼓里。在线转换文档

我已经走到了这一步,以下是我对电话应该是什么样子的最佳猜测:

<?php
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, "http://api2.online-convert.com/jobs");
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_HEADER, FALSE);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
  "Host: https://api2.online-convert.com",
  "X-Oc-Api-Key: <my api key>",
  "Content-Type: application/json"
));
$response = curl_exec($ch);
curl_close($ch);
var_dump($response);

任何帮助都将不胜感激。

他们使用REST API来转换文件。下面是一个例子。

首先创建一个带有链接的json文件,在该链接中可以下载要转换的文件(上传的处理方式不同)。另外添加要转换的格式。将其保存为test.json.

{
    "input": [{
        "type": "remote",
        "source": "https://www.wikipedia.org/portal/wikipedia.org/assets/img/Wikipedia-logo-v2.png"
    }],
        "conversion": [{
        "category": "image",
        "target": "png"
    }]
}

然后使用curl将此文件发送到online-convert.com的API。将API密钥添加到下面的脚本中,并将其保存为start.php,保存在保存test.json:的同一目录中

<?php
    $curl = curl_init();
    curl_setopt_array($curl, array(
        CURLOPT_URL => "https://api2.online-convert.com/jobs",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_POSTFIELDS => file_get_contents('test.json'),
        CURLOPT_HTTPHEADER => array(
            "content-type: application/json",
            "x-oc-api-key: <your API key here>"
            ),
        )
    );
    $response = curl_exec($curl);
    $err = curl_error($curl);
    curl_close($curl);
    if ($err) {
        echo "cURL Error #:" . $err;
    } else {
        echo $response;
    }
?>

使用在命令行上执行PHP文件

php save.php

您也可以使用网络浏览器调用脚本。

成功发送作业并获得有效响应后,您可以获得转换的状态。为此,您需要在执行start.php时得到的id(作业id)。创建一个名为status.php的文件并执行它。

<?php
    $curl = curl_init();
    curl_setopt_array($curl, array(
        CURLOPT_URL => "https://api2.online-convert.com/jobs/<your job id here>",
        CURLOPT_RETURNTRANSFER => true,
        CURLOPT_HTTPHEADER => array(
            "content-type: application/json",
            "x-oc-api-key: <your API key here>
            ),
        )
    );
    $response = curl_exec($curl);
    $err = curl_error($curl);
    curl_close($curl);
    if ($err) {
        echo "cURL Error #:" . $err;
    } else {
        echo $response;
    }
?>

在那里你可以找到下载文件的URL。

API比这强大得多。您可以上传想要转换的文件,为一个文件创建多个转换(例如,使用一个API调用创建不同分辨率的视频),并设置各种转换选项。