我正在尝试根据此处的api将文件上传到框中:https://developers.box.com/docs/#files-upload-a-file,我总是收到" 错误请求"错误。
问题出在哪里?
url = https://upload.box.com/api/2.0/files/content
data = {"name":"1.jpg","parent":{"id":"0"}}
private Stream postToUrl(string url, string data)
{
WebRequest request = WebRequest.Create(url);
request.Method = WebRequestMethods.Http.Post;
byte[] byteArray = Encoding.UTF8.GetBytes(data);
request.ContentType = "multipart/form-data";
request.ContentLength = byteArray.Length;
request.Headers.Add("Authorization", "Bearer " + AccessToken);
Stream dataStream = request.GetRequestStream();
dataStream.Write(byteArray, 0, byteArray.Length);
dataStream.Close();
WebResponse response = request.GetResponse();
dataStream = response.GetResponseStream();
return dataStream;
}
我也尝试使用网址:https://upload.box.com/api/2.0/files/content?access_token=AccessToken
而不是标题内的令牌
答案 0 :(得分:2)
文件上传应该是一个多部分请求,但看起来你的身体是JSON。我也看不到你在哪里设置文件的内容。
This answer给出了一个很好的例子,说明了多部分请求应该是什么样子。最简单的解决方案是使用SDK或查找可以为您创建多部分请求的库。