出于某种原因,我通过新的 REST API 上传到 OneNote 的任何文档在从 OneNote 中查看时都会损坏。其他一切都很好,但文件(例如 Word 文档)不可点击,如果您尝试打开,则会显示为损坏。
这类似于字节数组或其内存出现问题时可能发生的情况,但情况似乎并非如此。我使用基本相同的过程将文件字节上传到 SharePoint、OneDrive 等。只有 OneNote 文件似乎已损坏。
这是 C# 的简化版本
HttpRequestMessage createMessage = null;
HttpResponseMessage response = null;
using (var streamContent = new ByteArrayContent(fileBytes))
{
streamContent.Headers.ContentType = new MediaTypeHeaderValue("application/vnd.openxmlformats-officedocument.wordprocessingml.document");
streamContent.Headers.ContentDisposition = new ContentDispositionHeaderValue("form-data");
streamContent.Headers.ContentDisposition.Name = fileName;
createMessage = new HttpRequestMessage(HttpMethod.Post, authorizationUrl)
{
Content = new MultipartFormDataContent
{
{
new StringContent(simpleHtml,
System.Text.Encoding.UTF8, "text/html"), "Presentation"
},
{streamContent}
}
};
response = await client.SendAsync(createMessage);
var stream = await response.Content.ReadAsStreamAsync();
successful = response.IsSuccessStatusCode;
}
有没有人有任何想法或工作代码通过 Windows Store 应用程序通过 OneNote API 上传实际的二进制文档?