public function testGetSignedUrlForPuttingObjectFromFile() { $file = __FILE__; $object = "a.file"; $timeout = 3600; $options = array('Content-Type' => 'txt'); try { $signedUrl = $this->ossClient->signUrl($this->bucket, $object, $timeout, "PUT", $options); $request = new RequestCore($signedUrl); $request->set_method('PUT'); $request->add_header('Content-Type', 'txt'); $request->set_read_file($file); $request->set_read_stream_size(filesize($file)); $request->send_request(); $res = new ResponseCore($request->get_response_header(), $request->get_response_body(), $request->get_response_code()); $this->assertTrue($res->isOK()); } catch (OssException $e) { $this->assertFalse(true); } }
public function testResponseCore() { $res = new ResponseCore(null, "", 500); $this->assertFalse($res->isOK()); $this->assertTrue($res->isOK(500)); }
/** * 生成PutObject的签名url,主要用于私有权限下的写访问控制, 用户可以利用生成的signedUrl * 从文件上传文件 * * @param OssClient $ossClient OssClient实例 * @param string $bucket 存储空间名称 * @throws OssException */ function getSignedUrlForPuttingObjectFromFile($ossClient, $bucket) { $file = __FILE__; $object = "test/test-signature-test-upload-and-download.txt"; $timeout = 3600; $options = array('Content-Type' => 'txt'); try { $signedUrl = $ossClient->signUrl($bucket, $object, $timeout, "PUT", $options); } catch (OssException $e) { printf(__FUNCTION__ . ": FAILED\n"); printf($e->getMessage() . "\n"); return; } print __FUNCTION__ . ": signedUrl: " . $signedUrl . "\n"; $request = new RequestCore($signedUrl); $request->set_method('PUT'); $request->add_header('Content-Type', 'txt'); $request->set_read_file($file); $request->set_read_stream_size(filesize($file)); $request->send_request(); $res = new ResponseCore($request->get_response_header(), $request->get_response_body(), $request->get_response_code()); if ($res->isOK()) { print __FUNCTION__ . ": OK" . "\n"; } else { print __FUNCTION__ . ": FAILED" . "\n"; } }