文件转换
其他 官方文档
文件转换成指定格式,成功则返回成功转换的ID,然后根据ID获取转换成功的内容
基本说明:
接口地址:https://api.convertio.co/convert
返回格式:json
请求方式:post
请求示例:https://api.convertio.co/convert?input=url&filename=xxx&outputformat=xxx
请求参数说明:
名称 类型 必填 说明
apikey string 必填 您的API密钥
input string 必填 提供输入文件的方法。 默认值:url 允许值:url,raw,base64,upload
file string 必填 如果是input = url为链接,如果input = raw / base64则为文件内容
outputformat string 必填 文件应转换为的输出格式
filename string 选填 input文件名包括扩展名(file.ext)。如果input = raw / base64,则为必需
options object 选填 转换选项
返回参数说明:
名称 类型 说明
code int HTTP状态代码
status string 成功为ok
data object 结果数据
id string 您的转换ID,根据<a href="https://www.free-api.com/doc/291" target="_blank">转换的ID</a>查找转换成功的内容
minutes string 可用的API转换分钟
JSON返回示例:
{
	"code": 200,
	"status": "ok",
	"data": {
		"id": "c54dd8821686a83c020e110c9e184f84",
		"minutes": 25
	}
}
服务级错误码参照
错误码 说明
401 此API密钥无效
完整教学代码示例
<?php
/**
 * Created by PhpStorm.
 * User: FZS
 * Time: 2019/9/3 23:10
 */
//----------------------------------
// 文件转换 调用类
//----------------------------------
class freeApi{
    private $appKey;
    private $paras;

    public function __construct($appKey){
        $this->appKey = $appKey;
        $this->paras = json_encode([
                'apikey' => $this->appKey,
                'file' => 'http://www.baidu.com',
                'outputformat' => 'png'
        ]);
    }
    /**
     * 获取结果
     * @return array
     */
    public function getResult(){
        return $this->freeApiCurl('http://api.convertio.co/convert',$this->paras,1);
    }
    /**
     * 请求接口返回内容
     * @param  string $url [请求的URL地址]
     * @param  string $params [请求的参数]
     * @param  int $ipost [是否采用POST形式]
     * @return  string
     */
    public function freeApiCurl($url,$params=false,$ispost=0){
        $ch = curl_init();
        curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
        curl_setopt( $ch, CURLOPT_HTTP_VERSION , CURL_HTTP_VERSION_1_1 );
        curl_setopt( $ch, CURLOPT_USERAGENT , 'free-api' );
        curl_setopt( $ch, CURLOPT_CONNECTTIMEOUT , 60 );
        curl_setopt( $ch, CURLOPT_TIMEOUT , 60);
        curl_setopt( $ch, CURLOPT_RETURNTRANSFER , true );
        if( $ispost )
        {
            curl_setopt( $ch , CURLOPT_POST , true );
            curl_setopt( $ch , CURLOPT_POSTFIELDS , $params );
            curl_setopt( $ch , CURLOPT_URL , $url );
        }
        else
        {
            if($params){
                curl_setopt( $ch , CURLOPT_URL , $url.'?'.$params );
            }else{
                curl_setopt( $ch , CURLOPT_URL , $url);
            }
        }
        $response = curl_exec( $ch );
        if ($response === FALSE) {
            return false;
        }
        curl_close( $ch );
        return $response;
    }
}