SharpGsクライアント ライブラリに基づいて、C# コンソール アプリケーションから再開可能なアップロードを実装しようとしています。これまでのところ、ファイル サイズが 2 GB を超えるデータをコンソール アプリから Google クラウド ストレージに PUT できます。
POST リクエストの開始中に、再開可能なアップロードを実装するために、サーバーはこれで応答しています。
「リモート サーバーがエラーを返しました: (403) 許可されていません。」} System.Net.WebException .
私が送信している URI は、POST リクエストで「https://mybucket_name.commondatastorage.googleapis.com/Test1Gb.rar」です。
「Test1Gb.rar」----はファイル名です。
Google Cloud Developers Guide に記載されているように、次のように POST リクエストを送信しています。
private HttpWebRequest PostCreateRequest(string authValue, DateTime date, string contentType,int contentLength)
{
var request = (HttpWebRequest)WebRequest.Create(_uri);
request.Method = PureRequestMethod(_method).ToString();
request.Headers.Add(@"Authorization", authValue);
request.Headers.Add(@"x-goog-resumable", "start");
request.Date = date;
request.ContentLength = 0;
request.ContentType = contentType;
return request;
}
public string PostRequest(string authValue, DateTime date, string contentType,int contentLength, Bucket.ObjectHead objectHead)
{
try
{
var request = PostCreateRequest(authValue, date, contentType,contentLength);
using (var response = (HttpWebResponse)request.GetResponse())
{
if (response.StatusCode == HttpStatusCode.Created)
{
return String.Empty;
}
else
return StreamToString(response.GetResponseStream());
}
}
catch (WebException exception)
{
return StreamToString(exception.Response.GetResponseStream());
}
}
私はこれを1週間試しています。これの何が悪いのかわかりません。
誰からでも得ることができる助けはありますか?
ありがとうございました。