@@ -2004,10 +2004,9 @@ private static function __getHash($string)
2004
2004
* @param string $method
2005
2005
* @param string $uri
2006
2006
* @param string $data
2007
- * @param array $parameters
2008
2007
* @return array $headers
2009
2008
*/
2010
- public static function __getSignatureV4 ($ aHeaders , $ headers , $ method ='GET ' , $ uri ='' , $ data = '' , $ parameters = array () )
2009
+ public static function __getSignatureV4 ($ aHeaders , $ headers , $ method ='GET ' , $ uri ='' , $ data = '' )
2011
2010
{
2012
2011
$ service = 's3 ' ;
2013
2012
$ region = S3 ::getRegion ();
@@ -2034,10 +2033,17 @@ public static function __getSignatureV4($aHeaders, $headers, $method='GET', $uri
2034
2033
// payload
2035
2034
$ payloadHash = isset ($ amzHeaders ['x-amz-content-sha256 ' ]) ? $ amzHeaders ['x-amz-content-sha256 ' ] : hash ('sha256 ' , $ data );
2036
2035
2036
+ // parameters
2037
+ $ parameters = array ();
2038
+ if (strpos ($ uri , '? ' )) {
2039
+ list ($ uri , $ query_str ) = @explode ("? " , $ uri );
2040
+ parse_str ($ query_str , $ parameters );
2041
+ }
2042
+
2037
2043
// CanonicalRequests
2038
2044
$ amzRequests [] = $ method ;
2039
2045
$ amzRequests [] = $ uri ;
2040
- $ amzRequests [] = http_build_query ($ parameters );
2046
+ $ amzRequests [] = http_build_query ($ parameters );
2041
2047
// add header as string to requests
2042
2048
foreach ( $ amzHeaders as $ k => $ v ) {
2043
2049
$ amzRequests [] = $ k . ': ' . $ v ;
@@ -2392,8 +2398,7 @@ public function getResponse()
2392
2398
$ this ->headers ,
2393
2399
$ this ->verb ,
2394
2400
$ this ->uri ,
2395
- $ this ->data ,
2396
- $ this ->parameters
2401
+ $ this ->data
2397
2402
);
2398
2403
foreach ($ amzHeaders as $ k => $ v ) {
2399
2404
$ headers [] = $ k .': ' . $ v ;
0 commit comments