祝您玩得開心,我使用 Google api v3 將影片上傳到 YouTube。不幸的是,我從昨天開始就面臨這個錯誤,程式碼或伺服器沒有任何更改。
我在不同部分搜尋了錯誤文本,但沒有得到任何結果。我唯一發現的是這個套件和這個位址的檔案 src/Http/MediaFileUpload.php 指定content-type,值為application/json;設定 charset=UTF-8。我想這就是問題所在。請指導我。
謝謝
"error": { "code": 400, "message": "Media type 'application/json; charset=UTF-8' is not supported. ", "errors": [ { "message": "Media type 'application/json; charset=UTF-8' is not supported. ", "domain": "global", "reason": "badRequest" } ], "status": "INVALID_ARGUMENT" }
$chunkSizeBytes = 15 * 1024 * 1024; $client->setDefer(true); $insertRequest = $youtube->videos->insert("status,snippet,recordingDetails", $video , [ 'notifySubscribers' => true ]); $media = new MediaFileUpload( $client, $insertRequest, 'video/'.File::extension($videoPath), null, false, $chunkSizeBytes ); $media->setFileSize(File::size($videoPath)); $status = false; $handle = fopen($videoPath, "rb"); while (!$status && !feof($handle)) { $chunk = fread($handle, $chunkSizeBytes); $status = $media->nextChunk($chunk); } fclose($handle); $client->setDefer(false);
檢視程式碼,當
$resumable
為false 時,媒體類型application/json
發生(請參閱此處 和此處)。所以我會嘗試設定
$resumable = true
(這是MediaFileUpload
的第五個參數)。您可以在large-file-upload.php
#。