2016-09-25 257 views
0

我試圖讓用戶從用戶谷歌驅動器中選擇圖像。我遵循這個文檔:https://developers.google.com/picker/docs/。 當我recive從谷歌圖像URL(「/驅動器/ V2 /文件/」 + FILEID)然後我嘗試下載磚塊圖像中我的.NET代碼:從谷歌驅動器下載圖片

var WebRequest = (HttpWebRequest)System.Net.WebRequest.Create(url); 
WebRequest.AllowWriteStreamBuffering = true; 
WebRequest.Timeout = 30000; 
WebRequest.KeepAlive = false; 
WebRequest.UserAgent = "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"; 
WebRequest.AllowAutoRedirect = true; 
WebRequest.Headers.Add("Authorization", "Bearer " + token);     

byte[] Arr; 
using (var WebResponse = WebRequest.GetResponse()) 
{ 
    using (var Stream = WebResponse.GetResponseStream()) 
    { 
      Arr = Stream.StreamToByteArray(); 
    } 

    WebResponse.Close(); 
} 
return Arr; 

但所有我得到的是一個空的(白色)網頁。有了我從谷歌獲得的網址,我可以在瀏覽器中查看圖片,但是我無法將其下載到我的代碼中。

我該如何下載圖片?

回答

0

使用,而不是WebClient

client = new WebClient(); 
client.Headers.Add("User-Agent", "Mozilla/5.0 (Windows NT 6.1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/41.0.2228.0 Safari/537.36"); 
client.Headers.Add("Authorization", "Bearer " + token); 
client.AllowWriteStreamBuffering = true; 
return client.DownloadData(url); /// DownloadData returns a byte array 
+0

同樣的問題,我得到一個空白頁時,我嘗試下載從谷歌驅動器的圖像。我可以從示例Facebook下載「公共」圖像,但不能從谷歌驅動器下載。 – mrcode

+0

也許你的'token'是錯誤的。 –

相關問題