首页 > 其他分享 >js 实现类chatgpt流式传输

js 实现类chatgpt流式传输

时间:2023-05-11 11:24:21浏览次数:41  
标签:XMLHttpRequest stream subStr text 流式 js xhr responseText chatgpt

  startStreaming() {
      // 创建 XMLHttpRequest 对象
      const xhr = new XMLHttpRequest();
      // 设置请求的 URL
      xhr.open('GET', "接口");
      // 设置响应类型为 text/event-stream
      xhr.setRequestHeader('Content-Type', 'text/event-stream');
      // 监听 readyStateChange 事件
      xhr.onreadystatechange = () => {
        // 如果 readyState 是 3,表示正在接收数据
        if (xhr.readyState === 3) {
          var subStr='data:'
          // console.log(xhr.responseText.replaceAll(subStr,""),'12123123')
          // 将数据添加到文本框中
          this.fileContent = xhr.responseText.replaceAll(subStr,"");
          console.log(this.fileContent)
        }
      };
      // 发送请求
      xhr.send();
    },

  

标签:XMLHttpRequest,stream,subStr,text,流式,js,xhr,responseText,chatgpt
From: https://www.cnblogs.com/yutianA/p/17390498.html

相关文章

  • 无法加载文件或程序集“ Newtonsoft.Json”或其依赖项之一清单定义与程序集引用不匹配
    无法加载文件或程序集“Newtonsoft.Json”或其依赖项之一清单定义与程序集引用不匹配的解决方法当一个程序中引用了不同版本的 Newtonsoft.Json.dll,又无法更改时候,可能会报此类错误,那么解决的方法如下:1、把不同的版本的dll放在bin目录下的ref文件夹2、在app.config或者web.......
  • jmeter 美化json响应
    简介在查看结果树中,ResponseBody里的json一般是不换行的,看起来很不方便。这里通过JSR223后置处理器改变响应的格式具体实现首先,我们要把fastjson的jar包放入到jmeterHome/lib/目录(建议放入1.x的版本,因为fastjson2可能需要多个jar包,具体需要哪些我也没有测试),重启jmeter第二步......
  • 前台json给后台传送两种数据一个json,一个字符串
    前台json数据以什么格式传给后台,后台controller可以已两个参数接收,比如一个list,一个string。有两种方法:第一种方法:contentType:'application/x-www-form-urlencoded',相当于向后台传送了俩参数,一个是数组,一个是string字符串;但是后台接收的时候不能用@RequestBody也不能用@PathVa......
  • react-html2canvas-jspdf 自动分页导出pdf
    //新建exportPDF.js文件importhtml2canvasfrom'html2canvas';importjsPDFfrom'jspdf';functiongeneratePDF(id,title){ //下载pdf方法 letdemo=document.getElementById(id); demo.style.overflow='visible'; html2canvas(......
  • JS逆向基础
    JS逆向基础简单记录一下JS逆向用到的一些知识。一、常见的加密算法及特点MD5:加密后有16位和32位,以0-9和小写a-f组成。其中16位的就是截取中间的第9至第24位,判断是否以MD5加密,主要看一下两点:是否符合16位或32位,加密后的结果是否是0-9,A-F。AES:对称加密算法,加密和解密用同......
  • commonjs
    Commonjs的缺点模块加载器由Node.js提供,依赖了Node.js本身的功能实现,比如文件系统,如果CommonJS模块直接放到浏览器中是无法执行的。当然,业界也产生了 browserify 这种打包工具来支持打包CommonJS模块,从而顺利在浏览器中执行,相当于社区实现了一个第三方的loader。C......
  • js基础---js操作dom元素节点的方法
    replaceWith():使用括号内元素替换当前元素remove():删除当前元素解决点击a标签不跳转页面的方法......
  • 关于ChatGPT高效学习的特别说明
    文/高扬 今天在和大伙一起基于飞书,将《ChatGPT实用指南》改造成在线文档,给大家汇报下成果。 整体的排版工作仍由谷雨负责,看得出她在职场上没少写文档,排版很精美。    我们特别设计了一个个性化的目录,你看:    这份在线文档预计4月26号或27号正式发布,敬......
  • 008 python get请求后得到的json字符串解析为pythn字典
    importjsonimportrequests#r=requests.get('https://www.baidu.com')#最基本的不带参数的get请求response=requests.get(url='http://xxx.xxx.xxx.cn:8120/api/Product/GetProductInfoList',\params={'packageNo'......
  • python基础学习-JSON
    """JSON:轻量级数据交互格式本质上是带有特定格式的字符串主要功能:在各种编译语言流通的数据格式,负责不同编译语言之间的数据传递和交互中转数据格式格式:{"name":"admin","age":18}字典或[{"name":"admin","age":18},{"name":"admin",&quo......