私はファイル管理の目的でOneDrive APIを使用するWebプロジェクトに取り組んでいます。私は* .docxを作成したかったのです。 * .pptx | * .xlsxファイルがありますが、残念ながら、OneDrive APIは空のファイルや新しいファイルの作成をサポートしていません。私が試みたのは、サーバーから空の/新しいファイルをOneDriveにアップロードすることでした。アップロードは正常に機能しますが、ファイルはOffice Onlineまたはローカルオフィスで開かれません。Office 365 - * .docxを作成します。 * .pptx | * .xlsxファイル
this blogから、私はWordファイルを生成してアップロードできました。
function createNewDoc(name) {
var htmlString = "<html><body></body></html>";
var byteNumbers = new Uint8Array(htmlString.length);
for (var i = 0; i < htmlString.length; i++) {
byteNumbers[i] = htmlString.charCodeAt(i);
}
var blob = new Blob([byteNumbers], {type: "text/html"});
socialAPI.uploadFile('windows', blob, 'name', 'folder.87ash7ashb7a2').then(function (resp) {
console.log("response for uploading file", resp);
})
}
このファイルはWordで動作しました。ただし、このメソッドはExcelとPowerpointでは機能しません。
最終的に、私はOneDrive APIを使用して何もできませんでした。上記のファイルの作成を可能にするものがあれば、私はOffice 365 APIを見ていましたが、そのようなものは見つかりませんでした。 (P.S:私はREST APIを見ています)
私が気づいたもう一つのことは、Boxは同じことをしてウィンドウで開くことができますが、URLはhttps://app.box.com/services/box_for_office_onlineの形式です。 Boxには、このようなサービスを提供するMicrosoftとの特別な協力関係がありますか?