2016-12-06 8 views
0

私はLaravelとGuzzleHttpを使ってDailyMotionにビデオをアップロードしようとしています。ここに私のコードは次のとおりです。Guzzleを使ってDailyMotionにビデオをアップロードする

$file = "3.mp4"; 
$fields["file"] = fopen($file, 'rb'); 
$res = $client->post($upload_url, [ 
    'headers' => ['Content-Type' => 'multipart/form-data'], 
    $fields 
]); 

$data3 = $res->getBody(); 
$response_upload_video = json_decode($data3,true); 
echo "<br>Getting dm upload video response: "; 
print_r($response_upload_video); 

$upload_urlは、DailyMotionので渡され、動的に生成されたURLです。上記のコードを実行すると、私はいつもこのエラーを取得します:

Production.ERROR: GuzzleHttp\Exception\ClientException:
Client error: POST http://upload-02.sg1.dailymotion.com/upload?uuid=werewkrewrewrwer&seal=pppppppppppppppp `resulted in a 400 Bad Request response:
{"error":"invalid content range","seal":"yyyyyyyyyyyyyyyyyy"} in /home/vagrant/Code/svc-titus/vendor/guzzlehttp/guzzle/src/Exception/RequestException.php:111

しかし、下に表示されるように私は、ポストマンを使用して、同じアップロードURLに動画をアップロードすることができます。 enter image description here

答えて

2

私はあなたを考えていませんコンテンツタイプのヘッダーを指定する必要があります。あなたがリソースを提供するときにそれを自動的に決定します。ビデオがパブリックディレクトリに保存されている場合、ビデオパスが問題に見えます。public_pathまたはそれぞれのパスヘルパー機能を使用して物理パスを取得します。 guzzleで動作するはずです.Http 6ここでフォームファイルをチェックしてください。 http://docs.guzzlephp.org/en/latest/quickstart.html#uploading-data

$file = "3.mp4"; 
$res = $client->post($upload_url, [ 
    'multipart' => [ 
     [ 
      'name'  => 'file', 
      'contents' => fopen(base_path($file), 'r') // give absolute path using path helper function 
     ] 
    ] 
]); 

$data3 = $res->getBody(); 
$response_upload_video = json_decode($data3,true); 
echo "<br>Getting dm upload video response: "; 
print_r($response_upload_video); 
+0

私はあなたのコード「を実行しようとした、このエラーを得たproduction.ERROR:Symfonyの\コンポーネント\デバッグ\例外の\ FatalThrowableError:タイプエラー:GuzzleHttp \ Psr7 \ MultipartStream :: addElementの(に渡される引数2)でなければなりません/home/vagrant/Code/svc-titus/vendor/guzzlehttp/psr7/src/MultipartStream.php(70行目)で呼び出された型配列の文字列です。基本的にエラーを返す行は 'contents' = > fopen(base_path($ file)、 'r') – imin

+0

申し訳ありません、私の悪い、それは働いている。どうもありがとう! – imin

関連する問題