我使用AWS使用无服务器框架遵循了an example的lambda函数。它正在按预期工作,但现在我想知道缓存响应的最佳方法是什么。
我的最终版本将包含一个或多个json对象,这些对象将定期检索。
客户端将调用一个api,它将检索已经缓存的数据。
那么我应该实施哪种AWS服务才能真正进行缓存?
答案 0 :(得分:0)
如果它是JSON的静态位,我只是从函数中导入/返回它而不是启用缓存,但这是您的API!
要回答您的问题,您可以在API Gateway内使用缓存来进行操作,请参见here
更新:
我实际上是为这个问题而道歉,虽然缓存工作是Op所要求的,但是存储在哪里存储了检索到的数据-如果从外部API检索数据,则可以像这样将其写入s3:< / p>
import AWS from 'aws-sdk'
export default (event, context, callback) => {
let s3Bucket = new AWS.S3({ params: { Bucket: 'YOUR_BUCKET_NAME' } })
let documentName = 'someName'
let fileExtension = 'json'
let s3data = {
Key: `${documentName}.${fileExtension}`,
Body: JSON.parse(event.body.someJsonObject),
}
s3Bucket.putObject(s3data, (err, s3result) => {
if (err) {
console.log(err)
callback(err, null)
} else {
console.log('S3 added', s3result)
callback(null, 'done')
}
})
}
然后,您只需要在服务端点中读回该对象即可。