我尝试将Google云端硬盘链接中的文件从Google服务器下载到我的网络服务器,以避免PHP POST中的最大尺寸为100。
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "id", for: indexPath as IndexPath) as! MyCollectionViewCell
if allIndex.contains(indexPath) {
cell.contentView.backgroundColor = Colours.primary
}
else {
cell.contentView.backgroundColor = Colours.secondary
}
}
插入像<?php
$link = $_POST["linkToUpload"];
$upload = file_put_contents("uploads/test".rand().".txt", fopen($link, 'r'));
header("Location: index.php");
?>
这样的普通链接,效果很好。问题是链接谷歌驱动器http://example.com/text.txt
。这是Google云端硬盘的直接链接,但它不起作用。所以我尝试插入我在本地https://drive.google.com/uc?authuser=0&id=000&export=download
下载文件的链接,但它仍然无法正常工作。您是否认为Google正在尝试避免服务器到服务器的副本?或者还有另一种方法可以做到吗?
答案 0 :(得分:0)
如果您想使用自己的应用程序获取文件,您应该使用API(应用程序编程接口)来获取这些文件。
查看file download documentation for Google Drive
PHP中的示例下载代码段:
$fileId = '0BwwA4oUTeiV1UVNwOHItT0xfa2M';
$response = $driveService->files->get($fileId, array(
'alt' => 'media'));
$content = $response->getBody()->getContents();