Add-In Office 365 Word : 403 Terlarang saat mencoba membuat dokumen dengan perpustakaan javascript kantor

Kami mencoba membuat dokumen baru di Word online menggunakan perpustakaan javascript kantor. Skrip terdapat dalam add-in Word. Dokumentasi untuk metode pembuatan ada di https://dev.office.com/reference/add-ins/word/application. Memanggil dokumen yang dibuat diikuti dengan metode terbuka selalu menghasilkan kesalahan terlarang 403.

HTTP403: FORBIDDEN - The server understood the request, but is refusing to fulfill it.
(XHR)OPTIONS - https://offline.officeapps.live.com/outage.html

Failed to load https://offline.officeapps.live.com/outage.html: Response to preflight request doesn't pass access control check: No 'Access-Control-Allow-Origin' header is present on the requested resource. Origin 'https://auc-word-edit.officeapps.live.com' is therefore not allowed access. The response had HTTP status code 403.

Kode untuk membuka dokumen tersebut adalah sebagai berikut.

Word.run(function (context) {
        var myNewDoc = context.application.createDocument();
        context.load(myNewDoc);

        return context.sync()
            .then(function () {
                myNewDoc.open();
                context.sync();
            }).catch(function (myError) {
                console.log(e);
            })

    }).catch( errorHandler });

Kesalahan terjadi pada panggilan konteks.sync() awal.

Word Online menyimpan ke akun bisnis Office 365. Membuat dokumen dari antarmuka berfungsi.

Mengapa kesalahan ini dikembalikan?

Perbarui

Kesalahan hanya terjadi ketika add-in digunakan dalam konteks akun Office 365 Business yang didukung oleh server sharepoint online.

Ketika saya mencoba menggunakan akun OneDrive pribadi, pembuatan dan pembukaan dokumen berhasil.


person K Rouse    schedule 13.03.2018    source sumber
comment
membuka URL secara manual offline.officeapps.live.com/outage.html juga memberikan kesalahan layanan tidak tersedia. dan ini bukan dokumen Word, hanya html? dapatkah Anda menunjukkan kepada kami di langkah mana Anda menegurnya dan informasi lebih detailnya?   -  person MSFT-Jipyua    schedule 14.03.2018
comment
Saya telah mengklarifikasi pertanyaan awal dan menambahkan pembaruan lebih lanjut.   -  person K Rouse    schedule 14.03.2018
comment
Pernahkah Anda melihat Add-in ini akan menampilkan dialog jendela baru ketika metode Buka dijalankan? dan setelah itu akan muncul janda baru untuk membuka dokumen tersebut, bisakah anda menyalin saya url janda itu? dan alangkah baiknya jika bisa memberikan video singkat tentang repro tersebut karena saya baru mencoba di akun O365 dan tidak bisa melakukan repro.   -  person MSFT-Jipyua    schedule 14.03.2018
comment
Juga untuk akun O365 Anda, Anda harus memiliki folder pribadi untuk menyimpan dokumen Anda (folder tersebut adalah tempat menyimpan dokumen saat Anda baru membuat dokumen dari UI). Bisakah Anda mencoba memanggil API CreateDocument dan bukan API terbuka, lalu memeriksa apakah file tersebut dibuat di bawah folder itu?   -  person MSFT-Jipyua    schedule 14.03.2018
comment
Saya salah. Kesalahan terjadi pada konteks awal.sync(). Saya menemukan ini setelah memanggil API pembuatan dokumen dan kemudian sinkronisasi. Dialog muncul Add-In ini akan membuat dokumen baru di folder default Anda di repositori cloud Anda saat ini. Ketika saya mengklik ok maka kesalahan dikembalikan di konsol javascript. Dokumen tidak dibuat di akun bisnis onedrive saya.   -  person K Rouse    schedule 14.03.2018
comment
Word.run(fungsi (konteks) { var myNewDoc = konteks.application.createDocument(); konteks.load(myNewDoc); kembalikan konteks.sync() .then(function () { myNewDoc.open(); konteks.sync( ); }).catch(function (myError) { console.log(JSON.stringify(myError)); }) }); Bisakah Anda mengubah kode Anda ke kode di atas dan melaporkan pesan kesalahannya kepada saya?   -  person MSFT-Jipyua    schedule 14.03.2018
comment
perintah stringify hanya mengembalikan {} . Jika saya mencetak pesannya menyatakan bahwaReferenceError: e tidak ditentukan. Mengetik di chromw memberi saya pesan tambahan terkait dengan 'Access-control-allow-origin'. Saya ingin tahu apakah ini disebabkan oleh pengaturan server sharepoint.   -  person K Rouse    schedule 15.03.2018
comment
perhatikan variabelnya adalah myError bukan e, silakan ubah menjadi myError dan coba lagi. pertama-tama kita harus memastikan apakah itu kesalahan createDocument API atau kesalahan Open API. 403 bukan kesalahan api, untuk kedua api tersebut kami tidak menampilkan kesalahan 403. Saya tidak yakin bagaimana Anda melihat kesalahan 403?   -  person MSFT-Jipyua    schedule 15.03.2018


Jawaban (2)


Saya rasa apa yang Anda coba lakukan dapat dicapai dengan satu baris kode, dan berfungsi secara online. silakan coba

 Word.run(async (context) => {
        context.application.createDocument().open();
        context.sync();
    });

person Juan Balmori    schedule 14.03.2018
comment
Saya mencoba kode ini dan masih memberikan kesalahan 403 di atas. - person K Rouse; 15.03.2018

Masalah ini tampaknya telah teratasi dengan sendirinya. Saya sekarang dapat membuat dan membuka dokumen. Saya hanya dapat berasumsi bahwa ini adalah masalah sementara dengan sharepoint atau masalah di perpustakaan javascript.

terima kasih kepada pihak-pihak yang telah berusaha memberikan bantuan.

person K Rouse    schedule 28.03.2018