云端硬盘revisions文档指出,在修订版中设置keepForever
属性将“永久保留修订版,即使它不再是版本修订版”。
根据所描述的功能,我正在创建一个新的二进制文件并将keepForever
属性设置为true。然后,我上传同一文件的新版本,并为新版本设置keepForever
为true。尽管在第一个修订版上设置了keepForever
,但第一个修订版的文件内容不会保留;它们已更改为最近上传的修订版。
我是否误解了keepForever
的功能,或者我描述的问题不是预期的功能,即错误?
以下是演示此问题的文件的可公开访问的文件ID和修订ID。修订版1的内容应为file 1
,修订版2的内容应为file 2
,但这两个版本都包含file 2
。
GET https://www.googleapis.com/drive/v3/files/0ByY6IA02pFulZG50RFRFQ2tHWms/revisions
{ revisions:
[ { id: '0ByY6IA02pFulOEZWN0dGYlMrOHVVNStPL21kR1N2WnhaSExRPQ',
modifiedTime: '2016-12-12T01:40:08.744Z',
keepForever: true },
{ id: '0ByY6IA02pFulNGh1MVFEWmlUM1RtRWUrMkswNjk3Y3pMZ25BPQ',
modifiedTime: '2016-12-12T01:40:23.356Z',
keepForever: true } ] }
使用node.js request模块,这是正在发出的HTTP请求:
request({
method : 'PATCH',
headers : {
'Content-Type' : 'application/octet-stream'
},
url : `https://www.googleapis.com/upload/drive/v3/files/0ByY6IA02pFulZG50RFRFQ2tHWms`,
qs : {
uploadType : 'media',
keepRevisionForever : true
},
body : fileStream
})