如何在不向源站发送请求的情况下响应观众?
How to respond to viewers without sending the request to the origin?
我正在尝试在 python 中实现一个接收文件的 lambda 边缘,用内容的长度对其进行评估,如果它大于允许的长度,则在不向查看者发送请求的情况下响应查看器源,否则它将被发送到 S3。我已经实现了要发送到 S3 的部分,但我正在努力响应查看器。
您可以生成对请求事件触发器的自定义响应
样本:
import json
def lambda_handler(event, context):
if True: # Case where you want to return the response
response = {
'body': "SAMPLE RESPONSE", # For image set this to base64 encoded string
'bodyEncoding': 'text',
'status': '200',
'statusDescription': 'OK',
'headers': {
'content-type':
[
{
'key': 'Content-Type',
'value': 'text'
}
]
}
}
return response
else: # Case where you want the request to be forwarded to the origin server
return event['Records'][0]['cf']['request']
注意:请求事件返回响应时,响应大小会有一些限制。它们可以在 Amazon developer guide
上找到
我正在尝试在 python 中实现一个接收文件的 lambda 边缘,用内容的长度对其进行评估,如果它大于允许的长度,则在不向查看者发送请求的情况下响应查看器源,否则它将被发送到 S3。我已经实现了要发送到 S3 的部分,但我正在努力响应查看器。
您可以生成对请求事件触发器的自定义响应
样本:
import json
def lambda_handler(event, context):
if True: # Case where you want to return the response
response = {
'body': "SAMPLE RESPONSE", # For image set this to base64 encoded string
'bodyEncoding': 'text',
'status': '200',
'statusDescription': 'OK',
'headers': {
'content-type':
[
{
'key': 'Content-Type',
'value': 'text'
}
]
}
}
return response
else: # Case where you want the request to be forwarded to the origin server
return event['Records'][0]['cf']['request']
注意:请求事件返回响应时,响应大小会有一些限制。它们可以在 Amazon developer guide
上找到