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

服務(wù)端運行一段時間后,路由會錯亂 懸賞,提供有效思路者,200紅包,明確解決,500紅包! 此貼結(jié)貼?。?

Qazink

問題原因是

webman里不支持think-validate的Validate::rule()方法
文檔里也有說明,是我沒看到
截圖

感謝各位評論的兄弟

請 xingxing777 加我v qazink 200紅包奉上

問題描述

所有的客戶端使用的api 都通過自定義路由的方式訪問

/sendsms 指向 方法 send_sms 發(fā)送短信
/login 指向 方法 login 用于登錄,
在運行了一段時間后,/send_sms 有可能會觸發(fā)其他路由內(nèi)的方法,比如login
有的時候是30% 的概率會運行到別的方法上,有的時候是90%

補充,只要重啟,該問題就會消失,暫時無法調(diào)試
本地沒有遇到過,但是我不確定是否是因為我啟動的時間不夠長,
目前是 nginx環(huán)境運行一段時間有概率出現(xiàn),
如果解決了 驗證可能會比較久(不超過一周),紅包會分兩次給!

程序代碼或配置

以下為路由配置

Route::post('/sendsms', [LoginController::class, 'send_sms']); // 發(fā)送短信驗證碼
// 需要登錄的接口
Route::group("", static function () {
    Route::group('/member', static function () {
        Route::get('/info', [MemberController::class, 'info']); // 會員信息
        Route::post('/submit/verification', [MemberController::class, 'submit_verifications']); // 提交實名信息
        Route::get('/verification', [MemberController::class, 'verification']); // 提交實名信息
        Route::post('/feedback', [MemberController::class, 'feedback']); // 提交實名信息
    });
    Route::group('/tool', static function () {
        Route::post('/ocr', [ToolController::class, 'ocr_idcard']); // 身份證識別
        Route::post('/upload', [ToolController::class, 'uploadimg']); // 圖片上傳
    });

    Route::group('/order', static function () {
        Route::get('/preview', [OrderController::class, 'preview']); // 下單預(yù)覽
        Route::post('/submit', [OrderController::class, 'order']); // 下單
    });
})->middleware([LoginMiddleware::class]);

// nginx 配置如下

upstream webman {
    server 127.0.0.1:8787;
    keepalive 10240;
}

   location /prod/ {
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://webman/;
        }
           location /api/ {
            proxy_set_header Host $http_host;
            proxy_set_header X-Real-IP $remote_addr;
            proxy_set_header REMOTE-HOST $remote_addr;
            proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
            proxy_pass http://webman/;
        }

重現(xiàn)問題的步驟

不能保100%復(fù)現(xiàn),重啟就會消失

發(fā)生錯亂的證據(jù)

nginx日志
截圖
上述nginx日志中,始終都是同一個方法,訪問了同一個路由,但是 返回值的大小是不同的,其中
綠色框 15:50:09 發(fā)生的請求是正常響應(yīng)的,
藍(lán)色框都是錯誤的,
紅色框是重啟后的,也都正常了。下面附上對應(yīng)的runtime日志
截圖

根據(jù)響應(yīng)時間和對應(yīng)使用的表格可以看到, 15:50:09 發(fā)生的請求是正常響應(yīng)的,后續(xù)的兩次都報錯了
也和nginx日志能對應(yīng)上,

錯亂的接口可能是登錄接口,下圖是我小伙伴給我的反饋,
也就是說 訪問的是 api/member/submit/verification 實際的調(diào)用方法卻是api/login對應(yīng)的方法
截圖

操作系統(tǒng)環(huán)境及workerman/webman等具體版本

服務(wù)器環(huán)境
Linux iZtemyhm9wbs69Z 3.10.0-957.21.3.el7.x86_64 #1 SMP Tue Jun 18 16:35:19 UTC 2019 x86_64 x86_64 x86_64 GNU/Linux
php版本 8.2
webman 版本 v2.1.2

507 5 0
5個回答

suihua

為啥要寫 static function , 把 static 去掉試試吧

  • Qazink 11天前

    收到,感覺關(guān)系不大,因為不被匿名函數(shù)包裹的路由也有這個bug. 之所以寫static 是因為好久之前看到的一個代碼規(guī)范,說匿名函數(shù)加上static效率會更高,就養(yǎng)成習(xí)慣,一直保留下來了1

xingxing777

請問你使用什么驗證器?

  • Qazink 11天前

    saithink/think-validate 基于 thik-validate 修改的,兼容php8

  • xingxing777 11天前

    我遇到驗證器,也是錯亂。你排查一下 看對你有沒有幫助

  • Qazink 11天前

    和我這個現(xiàn)象差不多? 你用的什么驗證器? 最終怎么檢查出來的?

  • xingxing777 11天前

    我使用的是 think\facade\Validate 和以前的think驗證器 現(xiàn)在最新的不會,具體我也忘了,但是我出現(xiàn)的頻率比較高,開發(fā)階段。后面更換了。社區(qū)也有其他小伙伴遇到過

  • Qazink 11天前

    兄弟后來換的啥驗證器,求指導(dǎo)

  • Qazink 11天前

    感謝兄弟,大概率就是這個問題,加我微信 qazink ,我驗證一段時間,沒問題就紅包!

  • xingxing777 11天前

    紅包不用了

vs7717

你在登錄接口那邊,可以增加記錄日志,只是看你描述發(fā)現(xiàn)不了什么
記錄日志每次請求的路由 是否是 api/login ,如果不是,就記錄 。
然后你nginx 為什么兩個 location 是同樣的配置,完全沒必要呀

  • 暫無評論
happy

看看中間件的代碼,感覺是這里有問題

  • 暫無評論
xingxing777

不用紅包,社區(qū)里面互相幫助!

??