收藏
回答

小程序请求的流式数据onChunkReceived返回的如何处理?

回答关注问题邀请回答
收藏

2 个回答

  • 00011
    00011
    2023-07-22

        var r = ''

        requestTask.onChunkReceived(chunk => {

          const arrayBuffer = chunk.data;

          const uint8Array = new Uint8Array(arrayBuffer);

          const str = new TextEncoding.TextDecoder('utf-8').decode(uint8Array);

          const data = str.split('data: ')

          data.forEach(el=>{

          //排除空字符串和[DONE]

          if (el.startsWith('{')){  

           var json =  JSON.parse(el)

           var text = json.choices[0].delta.content

            if (typeof text === 'string'){

              r +=text

              this.setData({

                typingText:r

              })

           }

          }

          })

        })

    2023-07-22
    有用 3
    回复 1
    • 七月 木槿
      七月 木槿
      05-07
      感谢感谢,帮助到我了
      05-07
      回复
  • Jonathan
    Jonathan
    2023-11-17
    requestTask.onChunkReceived(response => {
        const arrayBuffer = new Uint8Array(response.data);
    
        let resultText = '';
    
        for (let i in arrayBuffer) {
           resultText += String.fromCharCode(arrayBuffer[i]);
        }
        
        console.log(resultText);
    });
    


    2023-11-17
    有用 2
    回复
登录 后发表内容