【发布时间】:2014-07-23 16:00:25
【问题描述】:
我在通过 HTTP(s) 将分块上传提交到 Dropbox 时遇到问题。 上传似乎工作正常,但在提交时我收到 404 错误。 URI如下:
https://api-content.dropbox.com/1/commit_chunked_upload/auto/37Lc6FpJvLwe120D.dat
我的应用被沙箱化到它自己的文件夹中,因此我向 Dropbox 请求的权限最少。因此,我尝试更改 auto/ 之后的所有内容,以包括文件的完整路径 (Apps/MyApp/Filename.dat) 和 (sandbox/Filename.dat),但我的所有操作都返回 404 响应。
有什么建议吗?
- 编辑 -
上传参数在 POST 正文中。代码如下:
public void commitChunkedUpload(string filename, string uploadID)
{
Uri uri = new Uri(new Uri(oauthUploadURI), String.Format("commit_chunked_upload/auto/sandbox/{0}", filename));
HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
request.Headers.Add("Authorization", "Bearer " + authResponse["access_token"]);
request.Method = "POST";
byte[] parameters = Encoding.UTF8.GetBytes(String.Format("overwrite={0}&upload_id={1}", "false", uploadID));
request.ContentLength = parameters.Length;
Stream outputStream = request.GetRequestStream();
outputStream.Write(parameters, 0, parameters.Length);
var response = request.GetResponse();
var reader = new StreamReader(response.GetResponseStream());
var jsonReader = JsonReaderWriterFactory.CreateJsonReader(response.GetResponseStream(), new System.Xml.XmlDictionaryReaderQuotas());
var root = XElement.Load(jsonReader);
}
我确信问题在于如何将文件名/路径附加到 URI,但我不知道应该是什么。
【问题讨论】:
-
为什么投反对票?如果有任何不清楚的地方,我很乐意添加更多细节。
-
您使用的是什么 HTTP 方法?您是否传入
upload_id参数?也许你可以分享你的代码。
标签: c# http dropbox dropbox-api