【发布时间】:2016-12-30 02:20:17
【问题描述】:
我正在尝试使用 Curl php 将文件上传到谷歌云存储。
define("BASE","https://www.googleapis.com/upload/storage/v1/b/");
$key='XXXXX';
$authheaders = array(
"Authorization: Bearer " .$key,
"Content-Type: image/jpeg"
);
$bucket='gs://storage-8c79a.appspot.com';
$file='1234';
$fileName='1.pdf';
$url=BASE.$bucket.'/o?name=name_of_file.jpg&uploadType=multipart';
$curl = curl_init();
curl_setopt($curl, CURLOPT_POSTFIELDS, $file);
curl_setopt($curl, CURLOPT_HTTPHEADER, $authheaders);
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_CUSTOMREQUEST, "POST");
curl_setopt($curl, CURLOPT_USERAGENT, "HTTP/1.1.5");
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, false);
curl_setopt($curl, CURLOPT_SSL_VERIFYPEER, true);
// 1 is CURL_SSLVERSION_TLSv1, which is not always defined in PHP.
curl_setopt($curl, CURLOPT_SSLVERSION, 1);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);
curl_setopt($curl, CURLOPT_HEADER, true);
$response = curl_exec($curl);
echo $response;
输出:
HTTP/1.1 404 Not Found X-GUploader-UploadID: AEnB2UriDzXPtSs2Gac2BVfR4b4abfkroNy5gBCg8D85az3MK69YubPCCp_k3cx64A2MsSCMu-N_4F-RfFe10Vh_GjUbrjkrkzZ4NJ3Tlry4I8js-Origin Content-Type::/Origin Vary Vary:::/Origin Vary charset=UTF-8 内容长度:9 日期:2016 年 8 月 23 日星期二 09:57:23 GMT 服务器:UploadServer 替代协议:443:quic Alt-Svc:quic=":443";马=2592000; v="35,34,33,32,31,30" 未找到
请帮我解决这个问题。
【问题讨论】:
-
解释你的根本问题,更具体一点。
-
我已经编辑了您的问题,使其更具可读性。在这个网站上,我们鼓励用户edit 并重新编辑问题以尽可能地改进它们,所以请阅读How to Ask 的指导并回来查看您的问题。
标签: php curl google-cloud-storage