Skip to content

Commit

Permalink
Merge pull request #65 from qiniu/develop
Browse files Browse the repository at this point in the history
Release v6.1.7
  • Loading branch information
xushiwei committed Mar 11, 2014
2 parents fd9f03d + 91918a4 commit d1c0814
Show file tree
Hide file tree
Showing 5 changed files with 33 additions and 2 deletions.
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,5 +1,11 @@
## CHANGE LOG

### v6.1.7

2014-2-19 issues [#64](https://github.com/qiniu/php-sdk/pull/64)

- 修复 PutExtra.Params 无效的问题

### v6.1.6

2014-2-17 issues [#62](https://github.com/qiniu/php-sdk/pull/62)
Expand Down
10 changes: 10 additions & 0 deletions qiniu/io.php
Original file line number Diff line number Diff line change
Expand Up @@ -32,6 +32,11 @@ function Qiniu_Put($upToken, $key, $body, $putExtra) // => ($putRet, $err)
if ($putExtra->CheckCrc) {
$fields['crc32'] = $putExtra->Crc32;
}
if ($putExtra->Params) {
foreach ($putExtra->Params as $k=>$v) {
$fields[$k] = $v;
}
}

$files = array(array('file', $fname, $body, $putExtra->MimeType));

Expand Down Expand Up @@ -66,6 +71,11 @@ function Qiniu_PutFile($upToken, $key, $localFile, $putExtra) // => ($putRet, $e
}
$fields['crc32'] = sprintf('%u', $putExtra->Crc32);
}
if ($putExtra->Params) {
foreach ($putExtra->Params as $k=>$v) {
$fields[$k] = $v;
}
}

$client = new Qiniu_HttpClient;
return Qiniu_Client_CallWithForm($client, $QINIU_UP_HOST, $fields, 'multipart/form-data');
Expand Down
6 changes: 6 additions & 0 deletions qiniu/resumable_io.php
Original file line number Diff line number Diff line change
Expand Up @@ -70,6 +70,12 @@ function Qiniu_Rio_Mkfile($self, $host, $key, $fsize, $extra) // => ($putRet, $e
$url .= '/mimeType/' . Qiniu_Encode($extra->MimeType);
}

if (!empty($extra->Params)) {
foreach ($extra->Params as $k=>$v) {
$url .= "/" . $k . "/" . Qiniu_Encode($v);
}
}

$ctxs = array();
foreach ($extra->Progresses as $prog) {
$ctxs []= $prog['ctx'];
Expand Down
9 changes: 7 additions & 2 deletions tests/IoTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -22,10 +22,12 @@ public function testPutFile()
$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
$upToken = $putPolicy->Token(null);
$putExtra = new Qiniu_PutExtra();
$putExtra->Params = array('x:test'=>'test');
$putExtra->CheckCrc = 1;
list($ret, $err) = Qiniu_PutFile($upToken, $key, __file__, $putExtra);
$this->assertNull($err);
$this->assertArrayHasKey('hash', $ret);
$this->assertArrayHasKey('x:test', $ret);
var_dump($ret);

list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
Expand All @@ -43,9 +45,12 @@ public function testPut()

$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
$upToken = $putPolicy->Token(null);
list($ret, $err) = Qiniu_Put($upToken, $key, "hello world!", null);
$putExtra = new Qiniu_PutExtra();
$putExtra->Params = array('x:test'=>'test');
list($ret, $err) = Qiniu_Put($upToken, $key, "hello world!", $putExtra);
$this->assertNull($err);
$this->assertArrayHasKey('hash', $ret);
$this->assertArrayHasKey('x:test', $ret);
var_dump($ret);

list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
Expand Down Expand Up @@ -132,7 +137,7 @@ public function testPut_exclusive()
$this->assertNull($err);
list($ret, $err) = Qiniu_PutFile($upToken, $key, __file__, null);
$this->assertNull($ret);
$this->assertEquals($err->Err, 'file exists');
$this->assertEquals($err->Code, 614);
var_dump($err);

list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
Expand Down
4 changes: 4 additions & 0 deletions tests/RioTest.php
Original file line number Diff line number Diff line change
Expand Up @@ -32,10 +32,12 @@ public function testPut()
$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
$upToken = $putPolicy->Token(null);
$putExtra = new Qiniu_Rio_PutExtra($this->bucket);
$putExtra->Params = array('x:test'=>'test');
$reader = new MockReader;
list($ret, $err) = Qiniu_Rio_Put($upToken, $key, $reader, 5, $putExtra);
$this->assertNull($err);
$this->assertEquals($ret['hash'], "Fnvgeq9GDVk6Mj0Nsz2gW2S_3LOl");
$this->assertEquals($ret['x:test'], "test");
var_dump($ret);

list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
Expand All @@ -54,10 +56,12 @@ public function testLargePut()
$putPolicy = new Qiniu_RS_PutPolicy($this->bucket);
$upToken = $putPolicy->Token(null);
$putExtra = new Qiniu_Rio_PutExtra($this->bucket);
$putExtra->Params = array('x:test'=>'test');
$reader = new MockReader;
list($ret, $err) = Qiniu_Rio_Put($upToken, $key, $reader, QINIU_RIO_BLOCK_SIZE + 5, $putExtra);
$this->assertNull($err);
$this->assertEquals($ret['hash'], "lgQEOCZ8Ievliq8XOfZmWTndgOll");
$this->assertEquals($ret['x:test'], "test");
var_dump($ret);

list($ret, $err) = Qiniu_RS_Stat($this->client, $this->bucket, $key);
Expand Down

0 comments on commit d1c0814

Please sign in to comment.