Google文档API:无法设置文档标题
问题描述:
我正尝试使用Node和Google Docs REST API上传文件。如果我不包含元数据,我可以很好地上传文件,但它始终会以“无标题”的形式上传。Google文档API:无法设置文档标题
但是当我包括元数据,我得到送我的原子数据,并试图继续与文件上传后,出现以下错误:
ParseException的 - 内容是不是在序言
允许这是我第一次请求创建的上载会话,并得到一个可恢复的媒体链接
var meta = '<?xml version="1.0" encoding="UTF-8"?>'
meta+= '<entry xmlns="http://www.w3.org/2005/Atom" xmlns:docs="http://schemas.google.com/docs/2007">'
meta+= '<category scheme="http://schemas.google.com/g/2005#kind" term="http://schemas.google.com/docs/2007#document"/>'
meta+= '<title>Test</title></entry>'
var options = {
host: 'docs.google.com',
path: '/feeds/upload/create-session/default/private/full',
method: 'POST',
headers: {
'Host' : 'docs.google.com',
'Content-Length' : meta.length,
'Content-Type': 'application/atom+xml',
'GData-Version' : 3,
'Authorization' : 'GoogleLogin auth=' + authToken,
'X-Upload-Content-Type' : 'application/msword',
'X-Upload-Content-Length' : 31232
}
}
var req = https.request(options, function (res) {
// make 2nd request
});
req.end(meta);
这是我的第二个请求是这样获得可恢复媒体链接
后var options = {
host: 'docs.google.com',
path: resumableMediaLink,
method: 'PUT',
headers: {
'Content-Length': data.length,
'Content-Type': 'application/msword',
'Content-Range': 'bytes 0-' + (data.length-1) +'/'+ data.length
}
}
var req = https.request(options, function (res) {
res.on('data', function (chunk) {
// ...
});
});
req.write(data);
req.end();
看来我不正确地发送原子数据。任何我可能做错的想法?
答
我想清楚我做错了什么。
我需要在第一个POST请求中设置'Slug'头部以启动可恢复的会话。
我已经在以下要求。