您好我已经开始使用googleapis npm并且可以列出并创建文档等。是否可以上传一个powerpoint文档将其保存在谷歌驱动器中,当我想下载它时,它可以作为单独的图像下载。我已经看到Aspose.Slides可能会这样做,但我希望能够使用谷歌文档。
任何帮助都很棒
到目前为止,我的代码是
var express = require('express')
, request = require('request')
, oauth = require('./oauth')
, app = express();
// Setup middleware
app.use(express.static(__dirname));
// List out file that are in your Google Drive
app.get('/upload', function(req, res) {
// Check to see if user has an access_token first
var fs = require('fs');
var ENDPOINT_OF_GDRIVE = 'https://www.googleapis.com/drive/v2';
var PARENT_FOLDER_ID = 'XXXXXXX';
var PNG_FILE = 'test.ppt';
if (oauth.access_token) {
var accessToken = oauth.access_token;
var fstatus = fs.statSync(PNG_FILE);
fs.open(PNG_FILE, 'r', function(status, fileDescripter) {
if (status) {
console.log(status.message);
//return;
}
var buffer = new Buffer(fstatus.size);
fs.read(fileDescripter, buffer, 0, fstatus.size, 0, function(err, num) {
request.post({
'url': 'https://www.googleapis.com/upload/drive/v2/files',
'qs': {
//request module adds "boundary" and "Content-Length" automatically.
'uploadType': 'multipart'
},
'headers' : {
'Authorization': 'Bearer ' + accessToken
},
'multipart': [
{
'Content-Type': 'application/json; charset=UTF-8',
'body': JSON.stringify({
'title': PNG_FILE,
'parents': [
{
'id': PARENT_FOLDER_ID
}
]
})
},
{
'Content-Type': 'application/vnd.openxmlformats-officedocument.presentationml.presentation',
'body': buffer
}
]
}, function(error, response, body){
console.log(error);
console.log(response);
console.log(body);
});
});
});
} else {
console.log("2nd Could not determine if user was authed. Redirecting to /");
res.redirect('/');
}
});
// Handle OAuth Routes
app.get('/login', oauth.login);
app.get('/auth/google/callback', oauth.callback);
app.get('/callback', oauth.callback);
app.listen(3000);
我已将其从服务器端auth更改为服务器端oauth。我可以上传一个ppt并在谷歌文档中打开它,我只需要知道如何能够下载ppt作为单独的图像
答案 0 :(得分:0)
通过大量的研究,它还没有完成