PHP Warning: http response is unavailable (maybe it has been ended or detached)

字號+ 編輯: 国内TP粉 修訂: 种花家 來源: swoole文档 2023-11-20 我要說兩句(0)

一個可能經常碰到的錯誤解決記錄。

相信不少小伙伴在使用swoole混合使用php8支持的业务代码感到了满意的性能提升,但新手观察日志会看到不少和平时php写业务时不一样的报错。处理逻辑的时候, 笔者通常会在response对象后调用end()这个方法, 这个之后, 接着在response对象中再调用header() status() 等一众方法,日志会报Warning级别的错误, 表示http不再可用。报错信息类似:

PHP Warning: Swoole\Http\Response::setStatusCode(): http response is unavailable (maybe it has been ended or detached)

怎么解决呢?

检查业务逻辑, 是不是调用了end()之后逻辑没用return;退出, 还在继续操作reponse对象。比如你在swoole传进来的response对象中调用了redirect()方法, 之后再调用end()方法就会报这个错, 因为redirect()方法中已经包含了end()方法的逻辑。

閲完此文,您的感想如何?
  • 有用

    0

  • 沒用

    0

  • 開心

    0

  • 憤怒

    0

  • 可憐

    0

1.如文章侵犯了您的版權,請發郵件通知本站,該文章將在24小時内刪除;
2.本站標注原創的文章,轉發時煩請注明來源;
3.交流群: 2702237 13835667

相關課文
  • mac開發接入微信公衆號接口返回報錯 cURL error 56: SSLRead() return error -9806

  • PHP的換行符是什麽

  • pecl安裝程序時報錯Array and string offset access syntax with curly braces is no longer supported

  • 由於商家傳入的H5交易參數有誤,該筆交易暫時無法完成,請聯繫商家解決

我要說說
網上賓友點評