Marco Di Francesco
Marco Di Francesco

Reputation: 45

Copying files from Google Drive Server to Own server directly

I'm trying to download files from a Google Drive link from Google server to my web server, to avoid the 100 max size in PHP POST.

<?php
$link = $_POST["linkToUpload"];

$upload = file_put_contents("uploads/test".rand().".txt", fopen($link, 'r'));
header("Location: index.php");
?>

Inserting a normal link like http://example.com/text.txt it works fine. The problem comes linking google drive https://drive.google.com/uc?authuser=0&id=000&export=download. This is a direct link from Google Drive, but it doesn't work. So I tried to insert the link that I obtained downloading the file locally https://doc-08-bo-docs.googleusercontent.com/docs/securesc/000/000/000/000/000/000?e=download and it's still not working. Do you think Google is trying to avoid the server-to-server copies? Or there is another method to do it?

Upvotes: 1

Views: 476

Answers (1)

jdickel
jdickel

Reputation: 1457

If you want to fetch files with your own application you should use the API (Application Programming Interface) to get these.

Have a look at the file download documentation for Google Drive

Example download snippet in PHP:

$fileId = '0BwwA4oUTeiV1UVNwOHItT0xfa2M';
$response = $driveService->files->get($fileId, array(
    'alt' => 'media'));
$content = $response->getBody()->getContents();

Upvotes: 1

Related Questions