/** * 对资源文件进行异步持久化处理 * * @param $key 待处理的源文件 * @param $fops string|array 待处理的pfop操作,多个pfop操作以array的形式传入。 * eg. avthumb/mp3/ab/192k, vframe/jpg/offset/7/w/480/h/360 * * @return array 返回持久化处理的persistentId, 和返回的错误。 * * @link http://developer.qiniu.com/docs/v6/api/reference/fop/ */ public function execute($key, $fops) { if (is_array($fops)) { $fops = implode(';', $fops); } $params = array('bucket' => $this->bucket, 'key' => $key, 'fops' => $fops); \Qiniu\setWithoutEmpty($query, 'pipeline', $this->pipeline); \Qiniu\setWithoutEmpty($query, 'notifyURL', $this->notify_url); if ($this->force) { $params['force'] = 1; } $data = http_build_query($params); $url = Config::API_HOST . '/pfop/'; $headers = $this->auth->authorization($url, $data, 'application/x-www-form-urlencoded'); $headers['Content-Type'] = 'application/x-www-form-urlencoded'; $response = Client::post($url, $data, $headers); if (!$response->ok()) { return array(null, new Error($url, $response)); } $r = $response->json(); $id = $r['persistentId']; return array($id, null); }
private function post($url, $data) { $this->currentUrl = $url; $headers = array('Authorization' => 'UpToken ' . $this->upToken); return Client::post($url, $data, $headers); }
private function post($url, $body) { $headers = $this->auth->authorization($url, $body, 'application/x-www-form-urlencoded'); $ret = Client::post($url, $body, $headers); if (!$ret->ok()) { return array(null, new Error($url, $ret)); } $r = $ret->body === null ? array() : $ret->json(); return array($r, null); }