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

抄袭别人网站怎样建网站平台

抄袭别人网站,怎样建网站平台,中英双文网站怎么做,合肥房产网官网首页通过uniapp开发与大模型对话的微信小程序,并且后端需要通过SSE向小程序返回响应数据。 微信小程序端需要展示响应数据,在这个过程中,数据解析这里踩了不少坑。 uniapp端开发微信小程序时,SSE连接处理的代码如下: con…

通过uniapp开发与大模型对话的微信小程序,并且后端需要通过SSE向小程序返回响应数据。

微信小程序端需要展示响应数据,在这个过程中,数据解析这里踩了不少坑。

uniapp端开发微信小程序时,SSE连接处理的代码如下:

  const initSSE2 = () => {console.log(uni.getStorageSync('token'))requestTask = uni.request({url: 'http://127.0.0.1:8889/connect',timeout: 30000,responseType: 'text',method: 'POST',enableChunked: true, //配置这里header: {Accept: 'text/event-stream','Authorization': uni.getStorageSync('token') //自定义请求头信息},responseType: 'arraybuffer',data: {},success: response => {console.log("success:" + JSON.stringify(response))},fail: error => {console.log("error:" + JSON.stringify(error))}})requestTask.onHeadersReceived((res) => {console.log("header:" + JSON.stringify(res.header));});// 这里监听消息requestTask.onChunkReceived((res) => {const uint8Array = new Uint8Array(res.data);let text = String.fromCharCode.apply(null, uint8Array);text = decodeURIComponent(escape(text));// 将后台通过streaming response返回的消息拼接到消息中messages.value[messages.value.length - 1].content += text;})}

后端返回的数据,在小程序端展示后结果如下: 

从展示效果看,返回的数据都以“data:”开头,而且数据都发生了换行。经过查询资料,了解到SSE返回的数据以"data:"开头,"\n\n"进行结尾,比如上面返回的数据类似这样的格式:

data:你好\n\n

SSE客户端端打印返回的数据:

        requestTask.onChunkReceived((res) => {console.log('响应数据:', res.data)const uint8Array = new Uint8Array(res.data);let text = String.fromCharCode.apply(null, uint8Array);text = decodeURIComponent(escape(text));// 将后台通过streaming response返回的消息拼接到消息中messages.value[messages.value.length - 1].content += text;})

 打印内容如下:

其中,"100 97 116 97 58"表示"data:","10 10"表示"\n\n",而且根据响应数据,我们发现SSE客户端是一次处理一批后端响应的数据。 

于是修改客户端解析数据的逻辑为:

requestTask.onChunkReceived((res) => {console.log('响应数据:', res.data)const uint8Array = new Uint8Array(res.data);let text = String.fromCharCode.apply(null, uint8Array);text = decodeURIComponent(escape(text));console.log('处理前:', text);let info = text.replace(/data:|\n\n/g, '')console.log('处理后:', info)// 将后台通过streaming response返回的消息拼接到消息中messages.value[messages.value.length - 1].content += info;})

其中通过正则表达式替换所有的"data:"和"\n\n"。替换后,展示效果如下:

但是根据后端打印的信息,在"回答:"后面是有换行的,后端输出内容:

这是由于后端返回大模型响应的数据时,需要换行的数据中间也使用了"\n\n",这就和SSE的数据格式产生了冲突。于是我们修改后端返回数据的代码,将"\n\n"替换为"\n":

前后端处理完成后,最终格式如下:

 

http://www.dtcms.com/wzjs/272481.html

相关文章:

  • wordpress企业站模板下载宝安网站建设
  • 武汉做网站最好的公司武汉新一轮疫情
  • 铜仁市建设局网站百度应用平台
  • 如何做赌博网站代理外链服务
  • 网站建设报告书最大的搜索网站排名
  • 网站栏目功能分析网上怎么推广公司产品
  • 网站建设品牌好网站优化排名操作
  • 在国外视频网站做中国美食网站诊断分析
  • 国内政府网站建设情况关键词采集网站
  • 聊城推广网站关键词排名靠前
  • 昆明网站建设首选公司上海还能推seo吗
  • 娄底建网站浙江网络科技有限公司
  • 象山县住房建设局网站沈阳seo关键词
  • 网站扩展虚拟空间成都网站推广
  • html商业网站模板灰色关键词排名技术
  • 张家港建设银行网站长春百度关键词优化
  • wordpress用户设置seo品牌优化
  • 网站后台管理系统操作电商入门基础知识
  • 乐都企业网站建设哪家好成都专业seo公司
  • 承德网站网络销售就是忽悠人
  • 给别人做网站收8000贵不贵线上渠道推广怎么做
  • 佛山专业英文网站建设seo哪里可以学
  • wordpress上传ftp失败怎么优化一个网站关键词
  • 武汉专业网站建设报关专业拓客公司联系方式
  • 淄博网站建设推广惠州搜索引擎优化
  • 东莞建站网站模板怎么让某个关键词排名上去
  • 岳阳网站开发培训百度竞价排名案例分析
  • 政府网站建设安全html网页制作步骤
  • 做网站要素站长seo综合查询工具
  • 超简单做网站软件游戏推广怎么快速拉人