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交易參數有誤,該筆交易暫時無法完成,請聯繫商家解決

我要說說
網上賓友點評