国产+高潮+在线,国产 av 仑乱内谢,www国产亚洲精品久久,51国产偷自视频区视频,成人午夜精品网站在线观看

webman 內在隊列內 如何判斷是否存在header?

wo3948

問題描述

一個簡單的saas 系統,在 模型基類里面 boot 方法內 判斷header 增加 全局查詢條件,

protected static function boot(){
        $appId = 0;
        $package = '';

        if(empty(request())) {
            dump('===reqeust===');
//            $appId = request()?->header('App-Id') ?? 0;
//            $package = request()?->header('Package') ?? '';
        }

}

這個判斷 代碼在隊列里面執(zhí)行會直接拋出異常。請問有沒有別的代碼能判斷一下的?

549 1 0
1個回答

wo3948

重新安裝包 排查了一下,刪除 revolt/event-loop 后恢復正常,并不清楚哪里的問題 ,主要里面使用了 http-client 協程 涉及到這個擴展,所以請問下應該如何解決

  • 小Z先生 2025-01-23

    你應該使用Context來保存appid數據 然后把你的投遞隊列改一下 底層默認把appid投遞進queue msg 然后自己繼承queue的Consumer類 然后獲取到data數據的時候 用Context::set一下appid的數據 記得在最后 Context::destroy();一下

  • 小Z先生 2025-01-23

    Webman\Context 類

  • tanhongbin 2025-01-24

    request 正常只能在http進程中使用 你在隊列 請問用戶是誰?

  • tanhongbin 2025-01-24

    request() 不在http進程中使用 這個函數 你得在進程啟動的時候 初始化一下 \support\Context::init(); 你可以試一下

??