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

關(guān)于webman 控制器和響應(yīng)的一個疑惑?

Van Chin

設(shè)置如下的路由

<?php

use Webman\Route;
use App\Middleware\Authenticate;

Route::post('/admins/login', [App\Controllers\AdminController::class,'login'])->name('admins.login');

Route::group('',function (){
    Route::post('/admins/logout', [App\Controllers\AdminController::class,'logout'])->name('admins.logout');
    // admins 資源路由
    Route::resource('/admins', App\Controllers\AdminController::class);
})->middleware([
    Authenticate::class
]);

Route::disableDefaultRoute();

通過 php webman route:list 查看路由List

截圖

在訪問 POST /admins/logout 時 有很大機率 response 里的body 為變成 GET /admins 里的數(shù)據(jù)

如果 訪問一次 GET /admins 再訪問 POST /admins/logout 這個機率又會提高

我不知道是 路由的問題 還是 response 響應(yīng)的問題

POST /admins/logout 返回結(jié)果如下

截圖

正常應(yīng)該返回

截圖

AdminController 部分代碼如下

public function logout(Request $request) {

        $data = [
            'some_key' => 'logout => 的body 數(shù)據(jù)'
        ];

        return $this->rsp($data,'注銷成功!');

    }

public function index(Request $request)
    {
        $builder = $this->model->orderBy('created_at', 'desc');

        $fields = ['id','status','created_at','updated_at'];

        if(count($fields)) {
            $builder->select(...$fields);
        }

        $per_page = $request->filled('per_page') ? $request->input('per_page') : 2;

        $data = $builder->paginate(intval($per_page));

        return  $this->rsp($data);
    }
1621 3 1
3個回答

Van Chin

我不知道 是我代碼的問題 還是 route 或 response 的問題

各位幫我分析一下 造成這個情況的 可能的原因

  • Van Chin 2022-09-10

    通過 requests.route 里面的信息來看 應(yīng)該可以排除掉路由的問題

xiuwang

會不會是啟動了2個webman,有時候請求跑到了另外一個webman,結(jié)果和預(yù)期不一致?

  • Van Chin 2022-09-10

    沒有 只啟動了一個webman 我在想是不是 Response 用到上次的數(shù)據(jù)了(長貯內(nèi)存 或 多processe)只是猜測的

Van Chin

把設(shè)置 app.controller_reuse 設(shè)置為 false

返回結(jié)果就正常了

@walkor

controller_reuse 復(fù)用開啟 是不是在Controller 中引入Trait 也會復(fù)用?

controller_reuse 是否 開啟 對應(yīng)用的性能影響大么?

  • walkor 2022-09-10

    會復(fù)用。
    相對于業(yè)務(wù)來說,關(guān)閉復(fù)用對性能影響可以忽略。

  • Van Chin 2022-09-10

    感謝 老大 回復(fù)
    上述 返回結(jié)果 問題 是不是因為 復(fù)用開啟才導(dǎo)致的?能否詳細(xì)說明一下

    我現(xiàn)在的理解是第二次請求中 Response 被復(fù)用了 如上次請求 Response 中的xx_key = 1 第二次請求沒有重置或xx_key ,那么 xx_key 還是會出現(xiàn)在第二次請求的 Response

  • walkor 2022-09-10

    你的理解正確

  • liziyu 2022-09-10

    控制器use Trait也受 controller_reuse 開啟的影響嗎?
    懇請解惑!

  • walkor 2022-09-10

    Trait本身就是代碼片段,Trait本身沒有影響不影響的說法。

  • liziyu 2022-09-11

    謝謝老大,懂了!

年代過于久遠,無法發(fā)表回答
??