1

ドライブに「公開」可視性のファイルがあります。ドライブ API のサンプル ページのコード (以下) を使用して、ファイルの内容を取得します。ファイルのメタデータは、私のファイルがそこにあることを示しています。しかし、hhtp 応答はそこにないことを教えてくれます (リモート サーバーがエラーを返しました: (404) 見つかりません。) (ちなみに、ファイルは「所有者」権限を持つユーザーによってアップロードされました。 「ライター」権限を持つ別のユーザーと同じファイル。)何か考えはありますか?

    public static System.IO.Stream DownloadFile(
     IAuthenticator authenticator, Google.Apis.Drive.v2.Data.File file)
    {
        if (!String.IsNullOrEmpty(file.DownloadUrl))
        {
            try
            {
                HttpWebRequest request = (HttpWebRequest)WebRequest.Create(new Uri(file.DownloadUrl));
                authenticator.ApplyAuthenticationToRequest(request);
                HttpWebResponse response = (HttpWebResponse)request.GetResponse();
                if (response.StatusCode == HttpStatusCode.OK)
                {
                    return response.GetResponseStream();
                }
                else
                {
                    Console.WriteLine(
                        "An error occurred: " + response.StatusDescription);
                    return null;
                }
            }
            catch (Exception e)
            {
                Console.WriteLine("An error occurred: " + e.Message);
                return null;
            }
        }
        else
        {
            // The file doesn't have any content stored on Drive.
            return null;
        }
    }
4

1 に答える 1

0

この種の問題については、https://developers.google.com/drive/v2/reference/files/get#try-itのフォームを使用して試してください。

そうすれば、それがコードの問題なのかファイルの問題なのかを判断できます。

于 2012-09-29T00:50:20.370 に答える