Ejemplo n.º 1
0
 /**
  * 对资源文件进行异步持久化处理
  *
  * @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);
 }
Ejemplo n.º 2
0
 private function post($url, $data)
 {
     $this->currentUrl = $url;
     $headers = array('Authorization' => 'UpToken ' . $this->upToken);
     return Client::post($url, $data, $headers);
 }
Ejemplo n.º 3
0
 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);
 }