Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> REST PUT php upload psuje wysyłąny plik, Chiałbym napisać skrypt php wysyłający plik na serwer openstack
trzczy
post 16.02.2017, 16:30:59
Post #1





Grupa: Zarejestrowani
Postów: 460
Pomógł: 49
Dołączył: 5.06.2011

Ostrzeżenie: (0%)
-----


Siemanko. Chciałbym napisać skrypt php wysyłający plik na serwer openstack. Z tego serwera dostałem token i specjalną ścieżkę dostępu. Komenda curl uruchamana w cli przez ssh działa mi dobrze. Ale po przepisaniu na php wysyłany plik ulega deformacji. Powiększa się z 660kB do 660.29kB albo 660.31kB. Kiedy go potem ściągam na peceta, to po ściągnięciu nie chce się uruchomić w playerze. (Przed wysyłką na serwer chciał. Jest to plik video.)

Oto kod:

  1. $ch = curl_init();
  2.  
  3. curl_setopt($ch, CURLOPT_URL, "https://raz-ul.domena.com/v1/AUTH_8a619275-f933-4da1-b289-0c06a1a2a3a4/bcd/drop91.avi");
  4. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  5. curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "PUT");
  6.  
  7. $headers = array();
  8. $headers[] = "X-Auth-Token: AUTH_tkaacb23cace324039a3be9c81b1b2b3b4";
  9. $headers[] = "Content-Type: video/avi";
  10. curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);
  11.  
  12. $curlFile = curl_file_create ('./drop.avi');
  13. $curlFile->setMimeType('video/avi');
  14.  
  15. $post = array (
  16. 'type' => 'video/avi',
  17. 'file_contents' => $curlFile
  18. );
  19. curl_setopt ($ch, CURLOPT_POSTFIELDS, $post);
  20.  
  21. $response = curl_exec($ch);
  22. $info = curl_getinfo($ch);
  23. curl_close($ch);
  24.  
  25. $header_size = $info['header_size'];
  26. $header = substr($response, 0, $header_size);
  27. echo"<pre>";
  28. var_dump($header);
  29. var_dump($info);
  30. echo"</pre>";


Jak go poprawić?
Z góry dziękuję
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 14.08.2025 - 11:43