فهرست منبع

fix event/stream ping (#3553)

liuzhenghua 1 سال پیش
والد
کامیت
e02ee3bb2e
1فایلهای تغییر یافته به همراه8 افزوده شده و 2 حذف شده
  1. 8 2
      api/core/app/apps/base_app_generate_response_converter.py

+ 8 - 2
api/core/app/apps/base_app_generate_response_converter.py

@@ -26,7 +26,10 @@ class AppGenerateResponseConverter(ABC):
             else:
                 def _generate():
                     for chunk in cls.convert_stream_full_response(response):
-                        yield f'data: {chunk}\n\n'
+                        if chunk == 'ping':
+                            yield f'event: {chunk}\n\n'
+                        else:
+                            yield f'data: {chunk}\n\n'
 
                 return _generate()
         else:
@@ -35,7 +38,10 @@ class AppGenerateResponseConverter(ABC):
             else:
                 def _generate():
                     for chunk in cls.convert_stream_simple_response(response):
-                        yield f'data: {chunk}\n\n'
+                        if chunk == 'ping':
+                            yield f'event: {chunk}\n\n'
+                        else:
+                            yield f'data: {chunk}\n\n'
 
                 return _generate()