收藏
回答

RequestTask.onChunkReceived本地环境一个字一个字展示,真机就是一整段展示?

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

7 个回答

  • 13
    13
    05-10

    为什么真机情况下我的onChunkReceived只触发了一次,而且一次就接受了全部的分块数据呢?

    05-10
    有用 2
    回复 4
    • 超级奥
      超级奥
      05-27
      遇到同样的问题 请问解决了吗
      05-27
      回复
    • 卿
      06-21
      开发工具正常,体验版直接接口请求异常,遇到过吗?
      06-21
      回复
    • 小v
      小v
      06-26
      为啥呀 解决了嘛 我也遇到了 微信开发者工具可以 真机就一次返回
      06-26
      回复
    • 艺术家小锃子
      艺术家小锃子
      07-01回复
      请问有发现真机onChunkReceived后台数据丢失的问题吗?我现在遇到了,没找到解决办法。
      07-01
      回复
  • 如日
    如日
    08-27
    可以考虑一下,真机连接的后端的相关sse接口有没有禁用nginx缓存,需要手动禁用缓存。可以参考:
    # 设置 Nginx 不对 SSE 响应进行缓冲,直接透传给客户端
    proxy_buffering off;
    
    
    # 设置代理读取服务器响应的超时时间
    proxy_read_timeout 24h;
    
    
    # 设置客户端连接的超时时间
    proxy_connect_timeout 1h;
    
    
    # 设置 HTTP 版本,SSE 需要 HTTP/1.1
    proxy_http_version 1.1;
    
    
    # 保持连接活性,不发送连接关闭的信号
    proxy_set_header Connection '';
    
    
    # 配置代理传递的头部,确保 Host 头部正确传递
    proxy_set_header Host $host;
    proxy_set_header X-Real-IP $remote_addr;
    proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header X-Forwarded-Proto $scheme;
    
    
    # 设置代理的响应头部,保持传输编码为 chunked
    proxy_set_header X-Accel-Buffering no;
    
    
    # 设置流式响应头
    proxy_set_header Accept "text/event-stream";
    proxy_set_header Cache-Control "no-cache";
    
    
    # 禁用压缩
    proxy_set_header Accept-Encoding "";
    
    
    # 设置跨域资源共享 (CORS)
    add_header 'Access-Control-Allow-Origin' '*' always;
    add_header 'Access-Control-Allow-Credentials' 'true' always;
    add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
    add_header 'Access-Control-Allow-Headers' 'Origin,Authorization,Accept,X-Requested-With,Content-Type' always;
    
    


    08-27
    有用 1
    回复
  • 20250711
    20250711
    07-21

    一样的情况,卡发半天完成后发现手机实机和开发工具上不一样,开发工具上的返回数据在 requestTask = wx.request() 的 .onChunkRecived() 的回调函数里面一块一块地处理,但实机上是在wx.request() 的 complete() 和 success() 回调函数里面一次性处理。我真服了,这不白开发了?搞半天了!

    07-21
    有用
    回复
  • 梦想
    梦想
    07-19

    RequestTask.onChunkReceived本地环境一个字一个字展示,真机就是一整段展示?

    同样的问题,用IP就模拟器,真机都会一点一点的展示。使用域名就模拟器正常,真机就整个输出完才展示.

    目前我找到的解决方案是,将流式输出增加header头 X-Accel-Buffering: no 让代理服务器不缓存流式输出内容。目前我的问题解决了。不知道是不是适用大家的问题。

    07-19
    有用
    回复
  • 艺术家小锃子
    艺术家小锃子
    07-01

    请问有发现真机onChunkReceived后台数据丢失的问题吗?我现在遇到了,没找到解决办法。

    07-01
    有用
    回复
  • 令狐冲
    令狐冲
    06-08

    我也遇到了,楼主解决了吗?

    06-08
    有用
    回复 3
    • 小v
      小v
      06-26
      解决了嘛
      06-26
      回复
    • 艺术家小锃子
      艺术家小锃子
      07-01回复小v
      请问有发现真机onChunkReceived后台数据丢失的问题吗?我现在遇到了,没找到解决办法。
      07-01
      回复
    • 小v
      小v
      07-02回复艺术家小锃子
      啥意思 后台数据丢失?说详细些
      07-02
      回复
  • 智能回答 智能回答 该问答由AI生成
    05-10
    有用
登录 后发表内容