2014-01-31 111 views
2

我使用Quickstart: Run a Drive app in JavaScript教程將文檔上傳到谷歌驅動器。我成功地能夠運行HTML文件並上傳文件。Google文檔api在編輯模式下打開文檔

例如我上傳了test.docx文件和JSON響應是在後

問題是結束時,該備用鏈路開闢了在視圖僅(PDF等)模式的文檔。 對於這裏這個例子是鏈接 https://docs.google.com/a/easytha.com/file/d/0B7x-2AmDcIyRN3hPVVRWSUhQaWs/edit

但如何建立一個網址,以便它在編輯模式下打開了這樣 https://docs.google.com/a/easytha.com/document/d/1rH79lwfX4bZ4R5EEhSaTy52dfdKiezNOaaR-6ORBcoI/edit

而且兩者都是同樣的文件。

alternateLink 
    "https://docs.google.com...hQaWs/edit?usp=drivesdk" 

appDataContents 
    false 

copyable 
    true 

createdDate 
    "2014-01-31T10:01:31.092Z" 

downloadUrl 
    "https://doc-00-10-docs....4259&e=download&gd=true" 

editable 
    true 

etag 
    ""GJcqFgACxaboeo6aKKeP6-mh0PE/MTM5MTE2MjQ5MDg1NQ"" 

fileExtension 
    "docx" 

fileSize 
    "12497" 

iconLink 
    "https://ssl.gstatic.com...s/icon_10_word_list.png" 

id 
    "0B7x-2AmDcIyRN3hPVVRWSUhQaWs" 

kind 
    "drive#file" 

labels 
    Object { starred=false, hidden=false, trashed=false, more...} 

lastModifyingUser 
    Object { kind="drive#user", displayName="sapan parikh", isAuthenticatedUser=true, more...} 

lastModifyingUserName 
    "sapan parikh" 

lastViewedByMeDate 
    "2014-01-31T10:01:30.855Z" 

md5Checksum 
    "0acf21000754601319600c5182d794d4" 

mimeType 
    "application/vnd.openxml...rdprocessingml.document" 

modifiedByMeDate 
    "2014-01-31T10:01:30.855Z" 

modifiedDate 
    "2014-01-31T10:01:30.855Z" 

originalFilename 
    "test.docx" 

ownerNames 
    ["sapan parikh"] 

owners 
    [Object { kind="drive#user", displayName="sapan parikh", isAuthenticatedUser=true, more...}] 

parents 
    [Object { kind="drive#parentReference", id="0ALx-2AmDcIyRUk9PVA", selfLink="https://content.googlea...nts/0ALx-2AmDcIyRUk9PVA", more...}] 

quotaBytesUsed 
    "12497" 

selfLink 
    "https://content.googlea...2AmDcIyRN3hPVVRWSUhQaWs" 

shared 
    false 

title 
    "test.docx" 

userPermission 
    Object { kind="drive#permission", etag=""GJcqFgACxaboeo6aKKeP6-...XMO0VKCtlQA-JDZdgem3VQ"", id="me", more...} 

webContentLink 
    "https://docs.google.com...SUhQaWs&export=download" 

writersCanShare 
    true 
+0

我跑這個太。 問題是谷歌驅動器只能編輯谷歌驅動器文檔。 所以,當你上傳一個docx文件時,它會創建一個新的谷歌驅動器文檔,並在你想編輯這個文檔時重新指定你。這意味着它是一個不同的文件。 我不確定javascript api,但在C#中有一個選項可以在上傳時轉換文檔。 –

+0

你是對的轉換:真正的param做到了。你想轉換你的評論回答? – user2014387

+0

歡迎您,我將添加它作爲答案。 我把它作爲評論發佈,因爲我不確定它是否是解決方案。 –

回答

2

我也跑過去了。問題是Google驅動器只能編輯Google驅動器文檔。所以,當你上傳一個docx文件時,它會創建一個新的Google驅動器文檔,並在你想編輯它時將你重定向到這個文件。這意味着它是一個不同的文件。我不確定JavaScript API,但在C#中有一個選項可用於在上傳時轉換文檔。

0

也許這是有點晚了,但可能幫助別人......

這是你如何在使用googleapis模塊的NodeJS做...

//imports 
var google = require('googleapis'); 
var key = require(path.join(__dirname, 'myGoogleAppJWTtoken.json')); 

//method 
var jwtClient = new google.auth.JWT(key.client_email, null, key.private_key, ['https://www.googleapis.com/auth/drive'], null); 
var drive = google.drive('v3'); 

drive.files.create({ 
      auth: jwtClient, // jwt auth variable 
      resource: { 
       name: 'DemoDoc', // saved name & google docs mimetype below 
       mimeType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document' 
      }, 
      media: { 
       mimeType: 'application/vnd.openxmlformats-officedocument.wordprocessingml.document', 
       body: fs.createReadStream('DemoDoc.docx') // my document 
      } 
     }, function(err,res){ 
      if(err){ 
       throw err; 
      }else{ 
       console.log("SuccessFull..."); 
      } 
     });