我正在使用这个在线转换服务,试图进行一个简单的调用,就像在线转换示例中一样。然而,他们没有实际代码的例子,所以我有点蒙在鼓里。在线转换文档
我已经走到了这一步,以下是我对电话应该是什么样子的最佳猜测:
<?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调用创建不同分辨率的视频),并设置各种转换选项。