/** * 初始化,将文件信息发送给服务器 * @param File $file * @param array $data : 附加参数 必须包含路径选项 'path' => '/yourpath/file.ext' * * @return mixed */ public function initUpload($file, $data) { $this->expiration = time() + 186400; $metaData = array('expiration' => $this->expiration, 'file_blocks' => $this->blocks, 'file_hash' => $file->getMd5FileHash(), 'file_size' => $file->getSize()); $metaData = array_merge($metaData, $data); $policy = $this->signature->createPolicy($metaData); $signature = $this->signature->createSign($metaData); $postData = compact('policy', 'signature'); $result = $this->postData($postData); $this->saveToken = $result['save_token']; $this->signature->setTokenSecret($result['token_secret']); return $result; }