微信小程序之流式(chunked)响应

小程序 0

使用场景

  • 实时输出场景(GPT)
  • 数据实时要求比较高(商场首页)

微信小程序用法

1、启动块接收(只是适合使用在wx.request接口中)

const requestTask = wx.request({        enableChunked: true,        ...}

2、重写块接收函数onChunkReceived

// typescript版本,微信小程序的ts声明中,多了一层res,那么就先定义为anyrequestTask.onChunkReceived(function (result:any) {	// 收到的数据,数据格式为:ArrayBuffer	const data = res.data;    // 处理相关收到chunked的逻辑    ...});

特别注意

  • 接收的Arraybuffer需要转换为字符串进行处理,需要注意中文,详细请查考 往期博文
  • 启动enableChunked之后,wx.reqeuest中的success方法中,只会在接收数据完毕之后调用
  • wx.uploadFile不支持enableChunked

也许您对下面的内容还感兴趣: