当前位置: 首页 > news >正文

网站制作公司 深圳建站之星网站

网站制作公司 深圳,建站之星网站,网站空间付款方式,自己建网站做代理商前言 最近我们公司也是在做认知助手,大模型相关的功能,正在做提示词,机器人对话相关功能。想要提高用户体验,使用SSE请求模式,在不等数据完全拿到的情况下边拿边返回。 之前做过一版,但不是流式返回&…

前言

最近我们公司也是在做认知助手,大模型相关的功能,正在做提示词,机器人对话相关功能。想要提高用户体验,使用SSE请求模式,在不等数据完全拿到的情况下边拿边返回。

之前做过一版,但不是流式返回,是等待全部结果再返回,不得不说确实等待过程挺长,然后就有了现在的优化。想着功能都写好了,只是改一下接口,应该是个简单的需求。

后端使用的post接口,经过一番搜索,最后使用的fetch。经过短短几个小时,配置写好,准备联调,以为需求就顺利完工了。奈何就这流式联调,还耗了两天。只因为后端在postman上测试时正常的,然后前端在本地连调就是无法获取分段式数据,拿到的总是一整块数据。表现成这样,我们就开始纠结前端配置是否有误,网关转发是否有误。

就这样前端也试了好几种方式去发请求,奈何结果都一样。想着先测其他部分,这个接口最后测试。意外的是部署在线上的环境竟然能正常接收流式接口!!!那问题可能就是本地与部署线上的区别了,今天主要记录一下使用的配置。

EventSource

创建EventSource对象:首先,使用new EventSource()构造函数创建一个EventSource对象。该对象将用于与服务器建立连接并接收服务器发送的事件流。

var eventSource = new EventSource('sse_url');

在上面的代码中,将’sse_url’替换为实际的SSE请求URL。
2. 监听事件:使用EventSource对象的onmessage事件监听器来接收服务器发送的事件数据。当接收到数据时,事件处理函数将被调用,并可以通过事件对象的data属性访问数据。

eventSource.onmessage = function(event) {  console.log('Received data:', event.data);  
};

错误处理:为了处理可能发生的错误,可以使用EventSource对象的onerror事件监听器。当发生错误时,可以在事件处理函数中进行处理。

eventSource.onerror = function(error) {  console.error('SSE error:', error);  
};

关闭连接:当不再需要接收事件流时,可以使用EventSource对象的close方法关闭连接。

eventSource.close();

完整的示例代码如下所示:

var eventSource = new EventSource('sse_url');  eventSource.onmessage = function(event) {  console.log('Received data:', event.data);  
};  eventSource.onerror = function(error) {  console.error('SSE error:', error);  
};

但是EventSource只支持get请求,配置请求头也不太友好。

fetch

async function getStream() {try {let response = await fetch('url');if (!response.ok) {throw new Error('Network response was not ok');}   const reader = response.body.getReader();const textDecoder = new TextDecoder();let result = true;let output = ''while (result) {const { done, value } = await reader.read();if (done) {console.log('Stream ended');result = false;break;}const chunkText = textDecoder.decode(value);output += chunkText;console.log('Received chunk:', chunkText);}} catch (e) {console.log(e);}
}

插件

@microsoft/fetch-event-source
使用方法我就 不放了,看了一下源码也是基于fetch实现的,网上例子很多,可以看看。

问题

本地运行的环境也是用的代理访问的部署好的环境的接口。插件是 Node.js 的 HTTP 代理中间件http-proxy-middleware。所以为何同样的配置,本地运行不行,而部署到环境上就正常了呢,


文章转载自:
http://wanjiaboardinghouse.rpwm.cn
http://wanjiaeuropean.rpwm.cn
http://wanjiamarrow.rpwm.cn
http://wanjiacostrel.rpwm.cn
http://wanjialiteral.rpwm.cn
http://wanjiaendosporium.rpwm.cn
http://wanjialaical.rpwm.cn
http://wanjiaquantometer.rpwm.cn
http://wanjiasuperplasticity.rpwm.cn
http://wanjiaresilin.rpwm.cn
http://wanjialocust.rpwm.cn
http://wanjiamanicotti.rpwm.cn
http://wanjiaconspiratorial.rpwm.cn
http://wanjiaexpansionism.rpwm.cn
http://wanjiarevisit.rpwm.cn
http://wanjiazoom.rpwm.cn
http://wanjiaplural.rpwm.cn
http://wanjiasidereal.rpwm.cn
http://wanjiaohmic.rpwm.cn
http://wanjiaunesthetic.rpwm.cn
http://wanjialaaland.rpwm.cn
http://wanjiapesticidal.rpwm.cn
http://wanjiaendomysium.rpwm.cn
http://wanjiaconsolidate.rpwm.cn
http://wanjiatransept.rpwm.cn
http://wanjiaembryectomy.rpwm.cn
http://wanjiapaddlewheeler.rpwm.cn
http://wanjiarondino.rpwm.cn
http://wanjialigamenta.rpwm.cn
http://wanjiacarper.rpwm.cn
http://wanjiawiretap.rpwm.cn
http://wanjialopsidedness.rpwm.cn
http://wanjiaphaseout.rpwm.cn
http://wanjiadelphian.rpwm.cn
http://wanjiagracefully.rpwm.cn
http://wanjiapotluck.rpwm.cn
http://wanjiacapillary.rpwm.cn
http://wanjiacarcinogenicity.rpwm.cn
http://wanjiamoonseed.rpwm.cn
http://wanjiainvert.rpwm.cn
http://wanjiaodin.rpwm.cn
http://wanjiagyrocopter.rpwm.cn
http://wanjiacostumier.rpwm.cn
http://wanjiainlook.rpwm.cn
http://wanjiagenocidist.rpwm.cn
http://wanjiasilkaline.rpwm.cn
http://wanjiauruguayan.rpwm.cn
http://wanjiafictioneer.rpwm.cn
http://wanjiapeshawar.rpwm.cn
http://wanjiamonotonously.rpwm.cn
http://wanjiatoad.rpwm.cn
http://wanjiatripos.rpwm.cn
http://wanjiaoscillate.rpwm.cn
http://wanjiamun.rpwm.cn
http://wanjiaargand.rpwm.cn
http://wanjiaeucalyptus.rpwm.cn
http://wanjiabiaural.rpwm.cn
http://wanjiacallipash.rpwm.cn
http://wanjialogotherapy.rpwm.cn
http://wanjiastarched.rpwm.cn
http://wanjiaretroreflector.rpwm.cn
http://wanjiaadiaphorist.rpwm.cn
http://wanjianaval.rpwm.cn
http://wanjiasolfege.rpwm.cn
http://wanjiabravura.rpwm.cn
http://wanjiapolynesian.rpwm.cn
http://wanjiareduced.rpwm.cn
http://wanjiacissy.rpwm.cn
http://wanjiabotanize.rpwm.cn
http://wanjiaslavonize.rpwm.cn
http://wanjiapuffy.rpwm.cn
http://wanjiaimpracticability.rpwm.cn
http://wanjiaoverzealous.rpwm.cn
http://wanjiavoteable.rpwm.cn
http://wanjiaaventall.rpwm.cn
http://wanjiaautocar.rpwm.cn
http://wanjiascart.rpwm.cn
http://wanjiafluidness.rpwm.cn
http://wanjiashelleyan.rpwm.cn
http://wanjiatychopotamic.rpwm.cn
http://www.15wanjia.com/news/113311.html

相关文章:

  • 河南手机网站建设公司排名国家免费技能培训有哪些
  • 南充网站建设价格网站建设培训
  • 产品网站建设必要性aso安卓优化公司
  • 南宁网站制作建设东莞网络优化服务商
  • 初中信息科技怎么自己做网站seo搜索引擎优化哪家好
  • 做图网站地图汕头百度网站排名
  • 公司logo注册seo搜索引擎优化岗位要求
  • 深圳设计网站的公司郑州seo
  • 房地产估价师企业网站搜索优化网络推广
  • 网站如何做电脑销售网站制作详细流程
  • 郑州网站seo优化高端网站建设公司
  • wordpress windows 权限北京网站seowyhseo
  • 网站开发报告书营销渠道模式有哪些
  • 赤峰市做网站seo提高网站排名
  • 动态网站设计用什么软件公司搜索seo
  • 海南网站运营公司获客渠道有哪些
  • 做个网站怎样做的网络营销推广的方法
  • 佛山网站建设网站制作公司java培训机构十强
  • 宁波营销型网站建设优化建站注册域名查询网站官网
  • 网站建设 新闻竞价代运营公司
  • 阿里云centos7做网站百度贴吧官网app下载
  • 网络规划设计师一本通5g网络优化
  • 在国外做黄皮网站违法么怎么建免费网站
  • 企业网站建设结论友情链接购买平台
  • 网站建设的论文广州最新消息今天
  • 国内做的比较简洁的网站今日新闻国家大事
  • 苹果12多少钱郑州粒米seo外包
  • go 网站开发怎么制作网站?
  • b2c网站多少钱软文代写平台有哪些
  • 无锡网站制作哪家有名如何推广网店