我正在尝试从基于SharpGs客户端库的 C# 控制台应用程序实现可恢复上传。到目前为止,我可以将数据从我的控制台应用程序放到文件大小 > 2 GB 的 Google 云存储中。
在发起 POST 请求时,为了实现可恢复的上传,服务器会对此做出响应。
“远程服务器返回错误:(403) Forbidden。”} 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 周。我不知道这有什么问题。
我可以从任何人那里得到任何帮助吗?
谢谢你。