Google Dokümanlar API.

1 Cevap php

Anyone know how to post file using curl to the google documents. I write this code:

$header[] = "Authorization: GoogleLogin auth=seсretkey";
$header[] = "Content-Type: application/pdf";
$header[] = "Slug: testdoc";
$header[] = "Content-Length: ".$_FILES['file']['size']."";
$url = "http://docs.google.com/feeds/documents/private/full";
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, FALSE);            
curl_setopt($ch, CURLOPT_POST, TRUE);
curl_setopt($ch, CURLOPT_POSTFIELDS, file_get_contents($_FILES['file']['tmp_name']));
curl_setopt($ch, CURLOPT_HTTPHEADER, $header);
$response = curl_exec($ch);
$info = curl_getinfo($ch);
curl_close($ch);    

Ve ben metin dosyaları ile düz / metin içerik türünü kullanırsanız yalnızca çalışıyor, ancak ikili modda benim yüklenen dosya i pdf belgeleri ile örneğin 417 http hata kodu, var ise.

Ben bir değişim bu satırı çalışıyor ettik

curl_setopt($ch, CURLOPT_POSTFIELDS, file_get_contents($_FILES['file']['tmp_name']));

Buna

curl_setopt($ch, CURLOPT_POSTFIELDS, array("file"=>"@".$_FILES['file']['tmp_name']));

Ama tekrar 417 yanıt hata kodu var. Sadece düz / metin tepki ile 201 olduğunu.

Google belgelerin Örnek official source üstbilgileri yüklemek

POST /feeds/documents/private/full HTTP/1.1
Host: docs.google.com
Authorization: <your authorization header here>
Content-Length: 81047
Content-Type: application/vnd.ms-excel
Slug: Example Spreadsheet

... spreadsheet contents here ...

1 Cevap

Çıkış this article. Bu değişkenler göndermek için nasıl dahil olmak üzere CURL kullanmak için nasıl büyük bir writeup verir. Google docs ile kullanmak nasıl emin değilim, ama sürece onların talimatları gibi o zaman bu yardımcı olacaktır size sonrası var sorunu anlamaya.