阿里云函数计算中的 HTTP 触发器目前已经支持 SSE(Server Sent Events)。
你可以通过在 HTTP 响应头中添加 "Content-Type: text/event-stream" 来将返回的内容标识为 SSE 格式。并且,为了保持 SSE 长连接,需要在响应中添加一个无限循环。具体示例代码如下:
def handler(event, context):
headers = {
'Content-Type': 'text/event-stream',
'Cache-Control': 'no-cache',
'Connection': 'keep-alive',
}
data = 'data: hello world\n\n'
return {
'headers': headers,
'body': data,
}
其中,"data:" 表示返回的数据,"data: hello world\n\n" 的 "\n\n" 表示分隔符和数据结束符,以便客户端能够识别出每条 SSE 消息。此外,"Cache-Control" 和 "Connection" 头部可以保持 SSE 长连接。
是的,函数计算中的 HTTP 触发器已经支持 SSE (Server-Sent Events)。通过 SSE,函数计算可以向客户端推送实时数据,而不需要客户端主动请求数据。您可以在 HTTP 触发器的响应头中添加 "Content-Type: text/event-stream",并在响应体中返回符合 SSE 规范的数据,即可实现 SSE 功能。同时,您还需要设置响应头中的 "Cache-Control" 为 "no-cache",以确保客户端不会缓存响应数据。
x-ali-apigw-sse: on
头来启用 SSE,确保您的函数代码也能够处理 SSE 消息。Content-Type: text/event-stream
以确保客户端正确解析 SSE 消息。版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。