Procházet zdrojové kódy

修复SDK的一个bug:Expert设置未生效导致的文件无法上传

陈德本 před 7 roky
rodič
revize
502ab01c3e
1 změnil soubory, kde provedl 6 přidání a 2 odebrání
  1. 6 2
      src/Qiniu/Http/Client.php

+ 6 - 2
src/Qiniu/Http/Client.php

@@ -91,14 +91,18 @@ final class Client
             $options[CURLOPT_FOLLOWLOCATION] = true;
         }
 
+        $headers = array();
         if (!empty($request->headers)) {
-            $headers = array();
             foreach ($request->headers as $key => $val) {
                 array_push($headers, "$key: $val");
             }
             $options[CURLOPT_HTTPHEADER] = $headers;
         }
-        curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
+        //七牛SDK此处有一个bug,Expert:不生效,会被后面的curl_setopt_array覆盖,导致文件无法上传
+        //curl_setopt($ch, CURLOPT_HTTPHEADER, array('Expect:'));
+        array_push($headers, "Expect:");
+        $options[CURLOPT_HTTPHEADER] = $headers;
+
 
         if (!empty($request->body)) {
             $options[CURLOPT_POSTFIELDS] = $request->body;