Я загрузил файл и переименовал его в Google Drive, используя php curl api.Но я не могу переместить загруженный файл в определенную папку.Пожалуйста, скажите мне, где я не прав в моем коде?Пожалуйста, скажите мне, какой URL-адрес API мне следует вызывать?или что-нибудь еще из моего кода, чтобы изменить
$ch = curl_init();
curl_setopt_array($ch, array(
CURLOPT_URL => 'https://www.googleapis.com/upload/drive/v3/files?uploadType=media',
CURLOPT_HTTPHEADER => array(
'Content-Type:' . $mime_type, // todo: runtime detection?
'Authorization: Bearer ' . $token
),
CURLOPT_POST => 1,
CURLOPT_POSTFIELDS => file_get_contents($image_location),
CURLOPT_RETURNTRANSFER => 1
));
$response = curl_exec($ch);
$id = json_decode($response, TRUE);
$get_id = $id['id'];
$link = "https://drive.google.com/file/d/" . $get_id . "/view?usp=sharing";
curl_close($ch);
if (isset($id['id'])) {
$folder_id = 'my_folder_id';
$get_id = $id['id'];
$data = array("name" => $position);
$data_string = json_encode($data);
$ch2 = curl_init();
curl_setopt_array($ch2, array(
CURLOPT_URL => 'https://www.googleapis.com/drive/v3/files/' . $get_id,
CURLOPT_HTTPHEADER => array(
'Content-Type:application/json', // todo: runtime detection?
'Authorization: Bearer ' . $token
),
CURLOPT_POST => 1,
CURLOPT_CUSTOMREQUEST => 'PATCH',
CURLOPT_POSTFIELDS => $data_string,
CURLOPT_RETURNTRANSFER => 1
));
$response = curl_exec($ch2);
$parsed = json_decode($response, TRUE);
if ($response === false) {
$output = 'ERROR: ' . curl_error($ch2);
} else {
$output = $response;
}
// close second request handler
curl_close($ch2);
$ch3 = curl_init();
curl_setopt_array($ch3, array(
CURLOPT_URL => 'https://www.googleapis.com/drive/v3/files/' . $get_id,
CURLOPT_POST => 1,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_POSTFIELDS => json_encode(array(
// Earlier it was title changed to name
'addParents' => $folder_id,
'removeParents' => 'root',
)),
// Earlier it was PATCH changed to post
CURLOPT_CUSTOMREQUEST => 'PATCH',
CURLOPT_HTTPHEADER => array(
'Content-Type :application/json',
'Authorization: Bearer ' . $token
)
));
$response1 = curl_exec($ch3);
$parsed1 = json_decode ( $response1, true );
if ($response1 === false) {
$output = 'ERROR: ' . curl_error($ch3);
} else {
$output = $response1;
}
print_r($parsed1);
// close second request handler
curl_close($ch3);
Мои файлы загружены в корневой каталог, но не могут быть перемещены в мою папку.Я уже создал папку в Google Drive.1-й лок для загрузки файла 2-й лок для переименования файла 3-й лок для перемещения файла в папку