将生成的文档嵌入到iFrame中

时间:2019-02-04 20:22:13

标签: javascript google-docs-api

我试图将生成的文档嵌入到iFrame中,以便用户(已通过身份验证)继续编辑:

// init client
gapi.load('client:auth2', () => {
    gapi.client.init({
        apiKey: API_KEY,
        clientId: CLIENT_ID,
        discoveryDocs: DISCOVERY_DOCS,
        scope: SCOPES
    }).then(() => {
        // Listen for sign-in state changes.
        gapi.auth2.getAuthInstance().isSignedIn.listen(updateSigninStatus());

        // Handle the initial sign-in state.
        updateSigninStatus(gapi.auth2.getAuthInstance().isSignedIn.get());
    });
});

function updateSigninStatus(isSignedIn) {
    signedIn = isSignedIn;
}

// sign in
gapi.auth2.getAuthInstance().signIn();

// get documents
function retrieveDoc() {
    gapi.client.docs.documents.get({
        documentId: 'abcd-1234'
    }).then(function (response) {
        const doc = response.result;

        const iframe = document.createElement('iframe');
        iframe.src = 'https://docs.google.com/viewer?' +
            'authuser=0&' +
            'srcid=' + doc.documentId + '&' +
            'pid=explorer&' +
            'a=v&' +
            'chrome=false&' +
            'embedded=true" height="1380" width="640"></iframe>';

        document.appendChild(iframe);
    }, function (response) {
        console.error(response);
    });
}

我认为这是因为我没有传递authuser参数,但是那到底是什么呢? gapi.auth2.getAuthInstance()不会返回ID,因此无法完全确定如何根据他们当前的会话获取此ID。 gapi.auth2.GoogleUser存在,但我似乎对此没有多大帮助。

任何帮助将不胜感激! :)

0 个答案:

没有答案
相关问题