傳遞給我的Google雲端功能的event
只能告訴我存儲桶和文件的名稱以及文件是否被刪除。是的,有更多的存在,但它似乎沒有那麼有用:如何從雲端函數中讀取類型爲.json的新雲存儲文件的內容?
{ timestamp: '2017-03-25T07:13:40.293Z',
eventType: 'providers/cloud.storage/eventTypes/object.change',
resource: 'projects/_/buckets/my-echo-bucket/objects/base.json#1490426020293545',
data: { kind: 'storage#object',
resourceState: 'exists',
id: 'my-echo-bucket/base.json/1490426020293545',
selfLink: 'https://www.googleapis.com/storage/v1/b/my-echo-bucket/o/base.json',
name: 'base.json',
bucket: 'my-echo-bucket',
generation: '1490426020293545',
metageneration: '1',
contentType: 'application/json',
timeCreated: '2017-03-25T07:13:40.185Z',
updated: '2017-03-25T07:13:40.185Z',
storageClass: 'STANDARD',
size: '548',
md5Hash: 'YzE3ZjUyZjlkNDU5YWZiNDg2NWI0YTEyZWZhYzQyZjY=',
mediaLink: 'https://www.googleapis.com/storage/v1/b/my-echo-bucket/o/base.json?generation=1490426020293545&alt=media', contentLanguage: 'en', crc32c: 'BQDL9w==' }
}
如何得到內容和新的以.json文件的不僅僅是元數據上傳到GS鬥?
我試過event.data.selfLink
,這是在存儲桶中的文件的URL使用npm:request()
,並得到回一個授權錯誤:
"code": 401, "message": "Anonymous users does not have storage.objects.get access to object my-echo-bucket/base.json."
有關於閱讀的存儲桶上SO類似的問題,但可能在不同的平臺上。反正它是懸而未決:
How do I read the contents of a file on Google Cloud Storage using javascript `
注:這是一個[自我回答提問](http://stackoverflow.com/help/self-answer)。希望其他人認爲它很有用。如果你有更好/更清潔/更短的答案,我會考慮它。 – Paul